首页 > 其他分享 >letcode 438 找到字符串中所有字母异位词

letcode 438 找到字符串中所有字母异位词

时间:2024-09-07 10:52:15浏览次数:7  
标签:异位 sloution dict 438 letcode hashmap2 nums1 nums2 hashmap1

##给定两个字符串,找到s中所有p的yi子串,返回这些子串的起始索引。
##不考虑答案输出的顺序。异位词 指由相同字母重排列形成的字符串(包括相同的字符串)。输入s=“cbaebabacd”,p=“abc” 输出【0,6】输入s=”abab“,p=“ab”
class sloution:
def charyiwei(self,nums1,nums2):
hashmap1=dict()
hashmap2=dict()
i,j=0,0
k=len(nums1)
l=[]
for i,value in enumerate(nums1):
hashmap1[value]=i
for i in range(len(nums2)-k):
j=i
while(j<i+k):
hashmap2[nums2[j]] = j
j+=1
print(hashmap2)
if(hashmap1.keys()==hashmap2.keys()):
l.append(i)
hashmap2=dict()
print(l)
sloution=sloution()
nums1="abc"
nums2="cbaebabacd"
sloution=sloution.charyiwei(nums1,nums2)

标签:异位,sloution,dict,438,letcode,hashmap2,nums1,nums2,hashmap1
From: https://blog.csdn.net/m0_66095096/article/details/141951476

相关文章

  • 有效的字母异位词
    给定两个字符串s和t,编写一个函数来判断t是否是s的字母异位词。示例1:输入:s="anagram",t="nagaram"输出:true示例2:输入:s="rat",t="car"输出:false解法1//将两个字符串转为字符数组后,排序并进行比较classSolution{publicbooleanisAnagram(St......
  • 代码随想录算法训练营|Day06 LeetCode 242.有效的字母异位词,349.两个数组的交集,202.快
    理论知识哈希表是根据关键码的值而直接进行访问的数据结构,一般用来快速判断一个元素是否出现在集合里映射——哈希函数哈希碰撞线性探测法拉链法常用的哈希结构数组set(集合)map(映射)242.有效的字母异位词242.有效的字母异位词-力扣(LeetCode)classSolution{......
  • 代码随想录算法训练营,9月2日 | 242.有效的字母异位词,349. 两个数组的交集,202. 快乐数,1
    哈希表理论基础1.根据关键码的值而直接进行访问的数据结构(直白来讲其实数组就是一张哈希表,哈希表中关键码就是数组的索引下标,然后通过下标直接访问数组中的元素);2.哈希表都是用来快速判断一个元素是否出现集合里;3.哈希函数:把值对应到哈希表的函数;哈希碰撞:映射到哈希表同一个索引......
  • leecode_049_字母异位词分组解析
    题目给你一个字符串数组,请你将字母异位词组合在一起。可以按任意顺序返回结果列表。字母异位词是由重新排列源单词的所有字母得到的一个新单词。示例1:输入:strs=["eat","tea","tan","ate","nat","bat"]输出:[["bat"],["nat","tan"],[&......
  • hdu7438
    题面给定长度为\(N\)的序列\(a\)。一个序列有很多个子序列,每个子序列在序列中出现了若干次。小马想请你输出序列\(a\)每个非空子序列出现次数的立方值的和,答案对\(998244353\)取模。数据范围:\(n,a_i\le250\)。题解一个很高级的trick,"出现次数的立方值"等价于"我......
  • 八行代码解决字母异位词分组(49)
    leetcode题目链接 这道题利用hash表特性可以很轻松的解决。首先我们只需要给所有的字母异位词排序,那样的所有的字母异位词就会变成同一个词,拿这个词当键,插入hash表,而所有的字母异位词当值,这样打印出hash表所有的词就是最后的结果。代码如下classSolution{ public: v......
  • 秋招突击——8/22——算法整理——滑动窗口类型题目思维方式——查找最短包含子串、找
    文章目录引言正文基本思路查找最短包含子串考试实现代码考试反思代码===》先确定一边的指针,然后再移动另外一个指针修改找到字符串中所有字母异位词复习实现参考实现无重复最长子串个人实现总结引言今天面试字节,被老师指出来代码能力薄弱,确实如此。后续应当多加......
  • day6 哈希表part01: 242.有效的字母异位词|349. 两个数组的交集|202. 快乐数|1. 两数
    242.有效的字母异位词 classSolution{publicbooleanisAnagram(Strings,Stringt){int[]record=newint[26];//a=97.soa-a=0,b-a=1.直接使用减法,不用记acii码值。//遍历第一个string++,遍历第二个string--.数组里的数字......
  • leetcode 49.字母异位词分组
    leetcode49.字母异位词分组题干给你一个字符串数组,请你将字母异位词组合在一起。可以按任意顺序返回结果列表。字母异位词是由重新排列源单词的所有字母得到的一个新单词。示例1:输入:strs=["eat","tea","tan","ate","nat","bat"]输出:[["bat"],["nat",&......
  • leetcode前缀和(2438. 二的幂数组中查询范围内的乘积)
    前言经过前期的基础训练以及部分实战练习,粗略掌握了各种题型的解题思路。现阶段开始专项练习。描述给你一个正整数 n ,你需要找到一个下标从 0 开始的数组 powers ,它包含 最少 数目的 2 的幂,且它们的和为 n 。powers 数组是 非递减 顺序的。根据前面描述,构造......