Skip to main content

Write a python program to implement a stack and queue using a list data-structure.


#####QUEUE IMPLEMENTATION####
def  cls():
   print("\n"*100)

def isempty(qu):
   if qu==[]:
      return True
   else:
      return False

def enqueue(qu,item):
   qu.append(item)
   if len(qu)==1:
      front=rear=0
   else:
      rear=len(qu)-1

def dequeue(qu):
   if isempty(qu):
      return"underflw"
   else :
      item =qu.pop(0)
      if len(qu)==0:
         front=rear=None
      return item

def peek(qu):
   if isempty(qu):
      return "underflow"
   else:
      front=0
   return qu[front]

def display(qu):
   if isempty(qu):
      print("queue empty!")
   elif len(qu)==1:
      print(qu[0],"<==front,rear")
   else:
      front=0
      rear=len(qu)-1
      print (qu[front],"<-front")
      for a in range(1,rear):
         print (qu[a])
      print (qu[rear],"<-rear")

#__main__
queue=[]
front=None
while True:
   cls()
   print("1.enqueue")
   print("2.Dequeue")
   print("3.Peek")
   print("4.Dispaly  queue")
   print("5.Exit")
   ch=int(input("enter your choice (1-5)"))
   if ch==1:
      item=int(input("enter item "))
      enqueue(queue,item)
      input("press enter to continue...")
   elif ch==2:
      item=dequeue(queue)
      if item=="underflow":
         print ("underflow ! queue is empty !")
      else:
         print("dequeue-ed item is",item)
      input("press enter to continue")
   elif ch==3:
      item=peek(queue)
      if item=="underflow":
         print("queue is empty")
      else:
         print("frontmost item is",item)
      input("press enter to continue.......")
   elif ch==4:
      display(queue)
      input("press enter to coontinue....")
   elif ch==5:
      break
   else:
      print("invalid choice !")
      input("press enter to continue")
 
OUTPUT

Comments

Popular posts from this blog