“变位词”判断问题
Posted yangbocsu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了“变位词”判断问题相关的知识,希望对你有一定的参考价值。
“变位词”判断问题
✧问题描述
所谓“变位词”是指两个词之间存在组成字母的重新排列关系.
如: heart和earth ,python和typhon
为了简单起见,假设参与判断的两个词仅由小写字母构成,而且长度相等
✧解题目标 :写一个bool函数,以两个词作为参数,返回这两个词是否变位词。可以很好展示同一问题的不同数量级算法
解法1 : 逐字检查
def anagramSolution1(s1,s2):
alist = list(s2)
pos1 = 0
stillOK = True
while pos1 < len(s1) and stillOK :
pos2 = 0
found = False
while pos2 < len(alist) and not found :
if s1[pos1] == alist[pos2]:
found = True
else:
pos2 += 1
if found:
alist[pos2] = None
else:
stillOK = False
pos1 += 1
return stillOK
print(anagramSolution1( 'helo', 'hello') )
以上是关于“变位词”判断问题的主要内容,如果未能解决你的问题,请参考以下文章
Java每日一题——>剑指 Offer II 032. 有效的变位词
Java每日一题——>剑指 Offer II 032. 有效的变位词