Created
December 12, 2020 17:50
-
-
Save waikyaw9999/675c09e6eeedd3ca8c176292ccabd3b5 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class Deque: | |
def __init__(self): | |
self.items = [] | |
def add_front(self, item): | |
self.items.insert(0, item) | |
def add_rear(self, item): | |
self.items.append(item) | |
def remove_front(self): | |
return self.items.pop(0) | |
def remove_rear(self): | |
return self.items.pop() | |
def size(self): | |
return len(self.items) | |
def check_palindrome(input_str): | |
deck = Deque() | |
for char in input_str: | |
deck.add_rear(char) | |
while deck.size() >= 2: # 1 or 0 means the string is a palindrome | |
front_item = deck.remove_front() # get front character | |
rear_item = deck.remove_rear() # get rear character | |
if front_item != rear_item: # return false if front is not equal to rear | |
return False | |
return True #return true if front is equal to rear |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment