力扣刷题 day61:10-31
1.单词规律
给定一种规律 pattern 和一个字符串 s ,判断 s 是否遵循相同的规律。
这里的 遵循 指完全匹配,例如, pattern 里的每个字母和字符串 s 中的每个非空单词之间存在着双向连接的对应规律。
方法一:双哈希表
#方法一:双哈希表
def wordPattern(pattern,s):s=s.split()d1={}d2={}if len(pattern)!=len(s):return False #长度不等不匹配for i in range(len(pattern)):if (pattern[i] in d1 and d1[pattern[i]]!=s[i]) or (s[i] in d2 and d2[s[i]]!=pattern[i]):#不满足双射return Falsed1[pattern[i]]=s[i] #一一对应d2[s[i]]=pattern[i]return True
2.反转字符串
编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。
不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。
方法一:双指针
#方法一:双指针
def reverseString(s):left,right=0,len(s)-1 #左右指针while left<right:tem=s[left]s[left]=s[right]s[right]=tem #交换left += 1right-=1