题目描述:
给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的一个字母异位词。 示例 1: 输入: s = "anagram", t = "nagaram" 输出: true 示例 2: 输入: s = "rat", t = "car" 输出: false 说明: 你可以假设字符串只包含小写字母
分析:此题就是判断两个字符串是否由相同的字符组成(每个字符出现的次数相同,顺序不管)
由于只包含小写字母,则可以用两个int数组存a-z每个字符出现的次数,再比较两个数组是否相同就行了。
1 class Solution { 2 public boolean isAnagram(String s, String t) { 3 if(s.length()!=t.length())return false; 4 int[] t1=new int[26],t2=new int[26]; 5 6 for(int i=0;i<s.length();i++) 7 { 8 t1[s.charAt(i)-‘a‘]++; 9 t2[t.charAt(i)-‘a‘]++; 10 } 11 for(int i=0;i<26;i++) 12 if(t1[i]!=t2[i])return false; 13 return true; 14 } 15 }
原文地址:https://www.cnblogs.com/hzhqiang/p/10850730.html
时间: 2024-11-07 21:35:53