Computer Science
Write a python program to check whether the given string is palindrome or not, using deque. (Hint : refer to algorithm 4.1)
Answer
def Deque():
return []
def addRear(deque, ch):
deque.append(ch)
def removeFront(deque):
if len(deque) == 0:
return None
return deque.pop(0)
def removeRear(deque):
if len(deque) == 0:
return None
return deque.pop()
def palchecker(aString):
chardeque = Deque()
for ch in aString:
addRear(chardeque, ch)
while len(chardeque) > 1:
first = removeFront(chardeque)
last = removeRear(chardeque)
if first != last:
return False
return True
string1 = input("Enter a string: ")
pal = palchecker(string1.lower())
if pal:
print(string1, "is a palindrome.")
else:
print(string1, "is not a palindrome.")
Output
Enter a string: anupama
anupama is not a palindrome.
Enter a string: malayalam
malayalam is a palindrome.
Related Questions
Write a menu driven python program using queue, to implement movement of shuttlecock in it's box.
How is queue data type different from deque data type?
Show the status of queue after each operation
enqueue(34) enqueue(54) dequeue() enqueue(12) dequeue() enqueue(61) peek() dequeue() dequeue() dequeue() dequeue() enqueue(1)
Show the status of deque after each operation.
peek() insertFront(12) insertRear(67) deletionFront() insertRear(43) deletionRear() deletionFront() deletionRear()