介绍:给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的一个字母异位词。

示例 1:

输入: s = "anagram", t = "nagaram"
输出: true

示例2:

输入: s = "rat", t = "car"
输出: false

说明: 你可以假设字符串只包含小写字母。
进阶:如果输入字符串包含 unicode 字符怎么办?你能否调整你的解法来应对这种情况?

源代码

#include<iostream>
#include<string>
#include<vector>
#include<algorithm>
#include <sstream>
#include<map>using namespace std;bool isAnagram(string s, string t)
{int k = 0;map<char, int> mapset_s,mapset_t;for (int i = 0; i < s.length(); i++){++mapset_s[s[i]];}for (int j = 0; j < t.length(); j++){++mapset_t[t[j]];}map<char, int>::iterator it_s = mapset_s.begin();map<char, int>::iterator it_t = mapset_t.begin();if (mapset_s.size() == mapset_t.size()){for (it_s, it_t; it_s != mapset_s.end() && it_t != mapset_t.end(); it_s++, it_t++){if ((it_s->first == it_t->first)&&(it_s->second == it_t->second)){k = k + 1;}}}if (k == mapset_s.size()){return true;}else{return false;}
}int main()
{string s = "anagram", t = "nagaram";cout << isAnagram(s, t) << endl;system("pause");return 0;
}

除了C++源代码,这里还有一份python源代码,实现起来特别简单。

from collections import Counter
class Solution:def isAnagram(self, s, t):""":type s: str:type t: str:rtype: bool"""c1 = Counter(s)c2 = Counter(t)if (c1 == c2):return Truereturn False

LeetCode之有效的字母异位词相关推荐

  1. leetcode:242 : 有效的字母异位词

    题解: 我们可以用一个数组来统计字符串中各个字母出现的次数. 通过比较各自的统计数组的相同与否来判断是不是字母异位词 有题目可知道字母都是小写的,所以统计的数组大小为26即可. bool isAnag ...

  2. leetcode——242. 有效的字母异位词

    问题描述: 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词. 示例 1: 输入: s = "anagram", t = "nagaram& ...

  3. leetcode 242. 有效的字母异位词 思考分析

    题目 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词. 我们先考虑低阶版本,认为字符只有26种可能,然后将a ~ z的字符映射到数组的索引0 ~ 25,数组中存放的则是 ...

  4. leetcode 242. 有效的字母异位词

    给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词. 示例 1: 输入: s = "anagram", t = "nagaram" ...

  5. 小白 LeetCode 242 有效的字母异位词

    字母异位词 字符串由相同字母组成,但允许排列顺序不同. 如"aaabbb" 与 "ababab" 是字母异位词, 而"aabb" 与 &qu ...

  6. Leetcode 242.有效的字母异位词(哈希表)

    传送门:力扣 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词. 注意:若 s 和 t 中每个字符出现的次数都相同,则称 s 和 t 互为字母异位词. 示例 1:输入: ...

  7. leetcode力扣49. 字母异位词分组

    给定一个字符串数组,将字母异位词组合在一起.字母异位词指字母相同,但排列不同的字符串. 示例: 输入: ["eat", "tea", "tan&quo ...

  8. LeetCode 242. 有效的字母异位词 (计数排序思想字符处理)

    242. 有效的字母异位词 题意: 任意给定两个单词字符串,判断这两个字符串是否是字母异位词 思路: 先判断字符串长度是否相等 将s字符串每个字母映射到数组中,在对应位置++ 将t字符串每个字母映射到 ...

  9. Leetcode 242.有效的字母异位词 By Python

    给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的一个字母异位词. 示例 1: 输入: s = "anagram", t = "nagaram" ...

  10. Leetcode DAY6: 有效的字母异位词 and 两个数组的交集 and 快乐数 and 两数之和

    242.有效的字母异位词 class Solution:def isAnagram(self, s: str, t: str) -> bool:map=[0] * 26for ss in s:m ...

最新文章

  1. 实时的.NET程序错误监控产品Exceptionless
  2. Vue页面手动刷新,导航栏激活项还原到初始状态问题解决方案
  3. 【HDU - 5585】Numbers (水题,数学,数论)
  4. java怎么通过字段去获取对象_通过java反射获取任意对象的字段名及字段值
  5. linux下查看pck设备,Linux中查看硬件信息超强命令sar
  6. 【UE4】 Pak解密、挂载、加载
  7. rs 华为hcip 课件下载_华为路由与交换hcip最新题库
  8. QT软件开发:基于libVLC内核设计视频播放器
  9. Android手机安装谷歌服务框架
  10. 恶魔和梦魇的私语------- 关于软件开发的务虚主义对话(3)
  11. 【FFMPEG】I,P,B帧和PTS,DTS时间戳的关系
  12. Android TextView 上下滑动 左右滑动设置
  13. HMI-51-【多媒体】搞地图 1
  14. html计时器重置的代码,javascript 秒表计时器实现代码
  15. Android rom开发:最完整的截屏方案(支持全屏截屏+区域截屏)
  16. Error mounting /dev/sda7 at 解决方法
  17. Java可以应用到哪些领域?
  18. Yilia清新护眼主题
  19. 【H.264/AVC视频编解码技术详解】二. 主流视频编码标准的发展
  20. 求N个数的最小公倍数和最大公约数

热门文章

  1. 数据结构之排序算法Java实现(8)—— 线性排序之计数排序算法
  2. AE中Identify查询工具的实现
  3. django form 介绍
  4. 基于HTML5功能强大的滑块幻灯片
  5. MFC 消息映射表和虚函数实现消息映射到底谁的效率高
  6. javascript getComputedStyle,getPropertyValue,CurrentStyle说明
  7. 一个ABC眼中的中国的创业环境(一)
  8. 挖掘经典:几乎被人遗忘的HTML七种用法
  9. GitHub实现G D O S自动签到
  10. 25. 二叉树中和为某一个值的路径(C++版本)