刷题1-排序1

学python有一段时间了,刷题试试。

题:

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

1.s="anagram" t="nagaram" 输出true

2.s="rat" t="car" 输出false

输出true需要满足的条件:

1.字符串的个数相等

2.元素一样

故而我的想法是:

1.判断字符串长度是否相等

2排序

3.做比较

代码如下:

class Solution:

def isAnagram(self,s:str,t:str)->bool:

if len(s) != len(t):

return False

if sorted(s)==sorted(t):

return True

else:

return False

if __name__ == '__main__':

q=Solution()

rt=q.isAnagram('anagran','nagaram')

print(rt)

后发现sorted的比较已经有了长度的比较;简化为:

class Solution:

def isAnagram(self,s:str,t:str)->bool:

if sorted(s)==sorted(t):

return True

else:

return False

if __name__ == '__main__':

q=Solution()

rt=q.isAnagram('anagran','nagaram')

print(rt)

这是我思路,但是我发现我的代码运行时长比较长。

 

 

 

 

 

你可能感兴趣的:(Python,刷题)