给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的一个字母异位词。
例如,
s = "anagram",t = "nagaram",返回 true
s = "rat",t = "car",返回 false
注意:
假定字符串只包含小写字母。
提升难度:
输入的字符串包含 unicode 字符怎么办?你能能否调整你的解法来适应这种情况?
详见:https://leetcode.com/problems/valid-anagram/description/

字母异位词:两个字符串使用的小写字母个数一样,但是每个字母所处的位置不是全都一样。

Java实现:

class Solution {
public boolean isAnagram(String s, String t) {
if(s.length()!=t.length()){
return false;
}
int[] hash=new int[26];
for(int i=0;i<s.length();++i){
++hash[s.charAt(i)-'a'];
}
for(int i=0;i<t.length();++i){
if(--hash[t.charAt(i)-'a']<0){
return false;
}
}
return true;
}
}

C++实现:

class Solution {
public:
bool isAnagram(string s, string t) {
if(s.size()!=t.size())
{
return false;
}
int m[26]={0};
for(int i=0;i<s.size();++i)
{
++m[s[i]-'a'];
}
for(int j=0;j<t.size();++j)
{
if(--m[t[j]-'a']<0)
{
return false;
}
}
return true;
}
};

参考:https://www.cnblogs.com/grandyang/p/4694988.html

最新文章

  1. jQuery Mobile入门
  2. 【转】C# 控件的自定义拖动、改变大小方法
  3. python学习笔记系列----(七)类
  4. 慕课网-安卓工程师初养成-4-11 Java循环跳转语句之 break
  5. POJ 3125 Printer Queue(队列,水题)
  6. YII中路径别名
  7. java 连接数据库mysql的方法
  8. Java 异常解决之java.lang.IllegalArgumentException: Comparison method violates its general contract!
  9. Javascript做模糊查询
  10. ioc和aop
  11. C# 代理应用 - Cachable
  12. offsetTop、clientTop、scrollTop、offsetTop各属性介绍
  13. 201521123097《Java程序设计》第三周学习总结
  14. CentOS5 可用yum源
  15. PPT在HTML网页上播放方法
  16. Winsock编程基继承基础(网络对时程序)
  17. [LeetCode] Preimage Size of Factorial Zeroes Function 阶乘零的原像个数函数
  18. python&#160;标准类库-数据类型之集合-容器数据类型
  19. Effective Java 第三版——72. 赞成使用标准异常
  20. SQL008存储过程总结

热门文章

  1. Writing Code-Codeforces511C**
  2. 我的arcgis培训照片14
  3. BNU 25593 Prime Time 记忆化dp
  4. WebLog Expert
  5. Android 布局自适应屏幕
  6. hiho一下 第五十一周(有向图欧拉路径)51
  7. tt1
  8. google免费DNSserver好用不?
  9. java8新特性-方法引用
  10. 洛谷 P2585 [ ZJOI 2006 ] 三色二叉树 —— 树形DP