下面的代码是否适合检查字符串是否是回文?它的时间复杂度是多少?我想是的,O(1)
对吗?因为我们只是使用不同的索引访问相同的字符串,所以访问索引O(1)
是一项操作。如果我错了,请纠正我。如果可能,请提供更好的解决方案。
s1 = 'abccba'
s2 = s1[::-1]
if s1==s2:
print('Palindrome')
else:
print('Not Palindrome')
def check_palin(word):
for i in range(len(word)/2):
if word[i] != word[-(i+1)]:
return False
return True
我猜这是一个更有效的解决方案,因为它会遍历字符串的一半并False
在违反条件时返回。但是仍然很复杂O(n)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句