异位词判断,python解法
Valid Anagram
判断两个字符串是否为异位词,意思是判断两个字符串有相同数量的字母。
Input: s = "anagram", t = "nagaram"
Output: trueInput: s = "rat", t = "car"
Output: false
有三种解法:
第一种最简单:
先对s和t排序,再对比是否相等
def isAnagram(self, s, t):""":type s: str:type t: str:rtype: bool"""return sorted(s) == sorted(t)
第二种使用哈希表计数:
def isAnagram(self, s, t):dict1 = {}dict2 = {}for i in s:if i in dict1:dict1[i] += 1else:dict1[i] = 1for j in t:if j in dict2:dict2[j] += 1else:dict2[j] = 1
遍历一个字符串,看字母在不在哈希表中,在的话就加1,不在就设置为1.
第三种使用列表实现哈希表
def isAnagram(self, s, t):dic1,dic2 = [0]*26,[0]*26for i in s:dic1[ord(i) - ord('a')] += 1for i in t:dic2[ord(i) - ord('a')] += 1return dic1 == dic2
先初始化列表,再用字母的ASCII码减去a的ASCII码,等到的列表index += 1,26字母对应0-25的索引值。
异位词判断,python解法相关推荐
- 字母异位词分组Python解法
给你一个字符串数组,请你将 字母异位词 组合在一起.可以按任意顺序返回结果列表. 字母异位词 是由重新排列源单词的字母得到的一个新单词,所有源单词中的字母通常恰好只用一次. 来源:力扣(LeetCod ...
- Leetcode 242.有效的字母异位词 By Python
给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的一个字母异位词. 示例 1: 输入: s = "anagram", t = "nagaram" ...
- 有效的字母异位词 四种解法(Python)
LeetCode链接 排序 时间复杂度 O(NlogN) class Solution:def isAnagram(self, s: str, t: str) -> bool:return le ...
- 【LeetCode】49.字母异位词分组 (三种解法开拓思路,java实现)
49. 字母异位词分组 分析 方法一:排序数组分类 思路 当且仅当它们的排序字符串相等时,两个字符串是字母异位词. 算法 维护一个映射 ans : {String -> List},其中每个键 ...
- LeetCode:242(Python)—— 有效的字母异位词(简单)
有效的字母异位词 概述:给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词.注意:若 s 和 t 中每个字符出现的次数都相同,则称 s 和 t 互为字母异位词. 输入: s ...
- python 有效的字母异位词
| 有效的字母异位词 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词. 注意:若 s 和 t 中每个字符出现的次数都相同,则称 s 和 t 互为字母异位词. 示例 1: ...
- 有效的字母异位词python(leetcode242)
#242. 有效的字母异位词 第一个哈希表题目 输入: s = "anagram", t = "nagaram" 输出: true 输入: s = " ...
- Python学习笔记(35)~异位词
异位词 概念 两个字符串的字母种类和字母对应数量是否相同,相同即是有效的字母异位词. 举个简单例子:"abbcd"和"dbabc" ...
- 算法训练Day6 | LeetCode:242. 有效的字母异位词(数组作哈希表);349. 两个数组的交集(Set作哈希表);202.快乐数 (Set作哈希表);1. 两数之和(Map作哈希表)
目录 LeetCode242. 有效的字母异位词 方法:数组作哈希表 1. 思路 2. 代码实现 3. 复杂度分析 4. 思考 Leetcode349. 两个数组的交集 方法一:用Set作HashMa ...
最新文章
- linux 入门-1
- 20180320作业1:源代码管理工具调查
- ReentrantLock可重入锁的使用场景(转)
- 【alibaba-cloud】nacos详解
- 前嗅ForeSpider教程:创建模板
- 阿里云各个地域节点速度测试(测试点到阿里云各站点)
- python S2-45 漏洞利用工具
- Postgresql的基本操作
- OSI体系结构图和TCP/IP体系结构图
- 关于画法几何和机械制图有感
- linux wifi驱动开发 二,Linux 下wifi 驱动开发(二)—— WiFi模块浅析
- 【第五篇】Maven系列教程-聚合工程
- 测试歌词的软件,测试、修改LRC歌词工具
- C语言数码管节日灯,硬件课程设计报告可编程节日彩灯(C语言).pdf
- DAEMON Tools Lite 虚拟光驱,安装iso文件,提示需要管理员权限的问题解决
- iOS arc weak指针原理
- IE-LAB网络实验室:华为认证 北京华为认证,思科ccie,sp ccie 思科ccnp 华为AAA认证详解
- 【教程】php在图片上添加文字
- 输入框连续删除,光标闪烁问题
- Window11环境变量配置
热门文章
- webpack+ES6+less开发环境搭建(附带视频教程)
- 中兴c300业务板_全新中兴C300 OLT ETGO板卡 业务板 EPON PON板 GTGO板卡
- 韶关学院计算机科学与技术代码,2009年韶关学院各专业代码
- 电信网通全国DNS 列表
- 凌讯消防装备管理系统(3)
- “未来可期,遇见更好的自己儿童成长小组”第二节活动
- 小猿理财:巴菲特推荐了ETF指数基金,没推荐增强型指数基金,原来道理在这!
- 知识图谱从哪里来:实体关系抽取的现状与未来
- qt+opencv实现拍照,打开视频,图像处理操作
- 做音视频开发要掌握哪些知识?