本文主要是介绍python “变位词”判断问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
问题描述:变位词指的是两个单词之间存在字母的重新排列关系,例如:heart和earth,python和typhon.
为了问题的简单描述,我们假设两个词都是小写,并且长度相同。
解决这个问题,我们有三种方法:
方法一:逐字比较法
思路:遍历第一个单词的每个字母,判断字母是否在另一个单词中,如果每个字母都在另一个单词中,则说明是是变位关系。
算法分析:
def anagramsolution(s1,s2):alist = list(s2) #复制s2 到达列表pos1 = 0stillok = Truewhile pos1 <len(s1) and stillok : #循环s1的每个字符串pos2 =0found = Falsewhile pos2 < len(s2) and not found:if s1[pos1] == alist[pos2]:found = True #在s2逐个对比 ,要是找到了直接跳出循环,减少循环的次
这篇关于python “变位词”判断问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!