# Stack using LL # Stack using Array
class Node: class Stack:
def __init__(self, data):
[Link] = data def __init__(self):
[Link] = None [Link] = []
class Stack: def isEmpty(self):
def __init__(self): return [Link] == []
[Link] = None
def push(self, item):
def isempty(self): [Link](item)
if [Link] == None:
return True def pop(self):
else: return [Link]()
return False
def peek(self):
def push(self, data): return [Link][len([Link])-1]
if [Link] == None:
[Link] = Node(data) def size(self):
else: return len([Link])
newnode = Node(data)
[Link] = [Link]
[Link] = newnode
def pop(self):
if [Link]():
return None
else:
poppednode = [Link]
[Link] = [Link]
[Link] = None
return [Link]
def peek(self):
if [Link]():
return None
else:
return [Link]
def display(self):
iternode = [Link]
if [Link]():
print("Stack Underflow")
else:
while(iternode != None):
print([Link], "->")
iternode = [Link]
return