相当于判断一个字符串是否是回文字符串,折中,检查两边字符是否相等判断就行!有帮助的话采纳一下哦!
def is_palindrome(s):
length = len(s)
if not length: # 空字符串
return True
mid_index = length // 2 # 如果s长度为奇数则是中点,偶数则是后面那个中点
index = 0
status = True
while index < mid_index:
if s[index] == s[length - 1 - index]:
index += 1
else:
status = False
break
return status
isPalindrome = lambda s:s[::-1]==s
问题的关键是要求基于“栈结构”
s = 'abcdedcba'
que = []
# 入栈
for i in s:
que.append(i)
# 出栈并判断是否回文传
for i in s:
if i!=que.pop():
print(False)
else:
print(True)