一、创建双端队列
# 右端是队首
class Deque:
def __init__(self):
self.items = []
def addFront(self,item):
self.items.append(item)
def addRear(self,item):
self.items.insert(0,item)
def removeFront(self):
return self.items.pop()
def removeRear(self):
return self.items.pop(0)
def isEmpty(self):
return self.items == []
def size(self):
return len(self.items)
二、回文词判定
def palchecker(string):
deque = Deque()
for i in string:
deque.addFront(i)
stillEqual = True
for i in range(len(string) // 2):
front = deque.removeFront()
rear = deque.removeRear()
if front != rear:
stillEqual = False
if stillEqual:
print('是回文词')
else:
print('不是回文词')
#测试
palchecker('21a12')
palchecker('')
palchecker('a')
palchecker('abc')
输出
是回文词
是回文词
是回文词
不是回文词