Skip to content

Latest commit

 

History

History
153 lines (114 loc) · 2.61 KB

DequeUsingList.md

File metadata and controls

153 lines (114 loc) · 2.61 KB

Implementation of Deque Using List

Initialize blank Deque Using List

def __init__(self):
    print("Initialize blank Deque Using List")
    self.dq=[]

Add Element at Left End Of Deque

def AddLeft(self,data):
    '''Add Element at Left End Of Deque'''
    self.dq.insert(0,data)

Add Element at Right End Of Deque

def AddRight(self,data):
    '''Add Element at Right End Of Deque'''
    self.dq.append(data)

Remove Element From Left End Of Deque

def PopLeft(self):
    '''Remove Element From  Left End Of Deque'''
    self.dq.pop(0)

Remove Element From Right End Of Deque

def PopRight(self):
    '''Remove Element From  Right End Of Deque'''
    self.dq.pop()

Full Example

class Deque:
  def __init__(self):
    print("Initialize blank Deque Using List")
    self.dq=[]
    
  def AddLeft(self,data):
    '''Add Element at Left End Of Deque'''
    self.dq.insert(0,data)
    
  def AddRight(self,data):
    '''Add Element at Right End Of Deque'''
    self.dq.append(data)
    
  def PopLeft(self):
    '''Remove Element From  Left End Of Deque'''
    self.dq.pop(0)
    
  def PopRight(self):
    '''Remove Element From  Right End Of Deque'''
    self.dq.pop()
    
  def TopLeft(self):
    '''Top Left Element'''
    return self.dq[0]
    
  def TopRight(self):
    '''Top Right Element'''
    return self.dq[-1]
    
  def Show(self):
    return self.dq
d=Deque()
print("\nBlank Deque")
print(d.Show())

#Add Element 5
d.AddRight(5)

#print deque
data=d.Show() 

print("\nDeque After Adding 5")
print(data)


#Add Element At the Right End
#Add 7
d.AddRight(7)

#Add 9
d.AddRight(9)

print("\nDeque After Adding 7 and 9 at Right end")
print(data)


#Add 6 element at Left Side End
d.AddLeft(6)

print("\nDeque After Adding 6 at Left End")
print(data)
#----------------------------TOP ELEMENT------------------------------
print("\nTop Element At Right End")
right=d.TopRight()
print(right)


print("\nTop Element At Left End")
left=d.TopLeft()
print(left)
#----------------------------Remove Element---------------------------

#Remove 6 From Right End
d.PopRight()

print("\nDeque After Remoing Element from Right End")
print(data)

#Remove 6 From Left End
d.PopLeft()

print("\nDeque After Remoing Element from Left End")
print(data)

Output

Initialize blank Deque Using List

Blank Deque
[]

Deque After Adding 5
[5]

Deque After Adding 7 and 9 at Right end
[5, 7, 9]

Deque After Adding 6 at Left End
[6, 5, 7, 9]

Top Element At Right End
9

Top Element At Left End
6

Deque After Remoing Element from Right End
[6, 5, 7]

Deque After Remoing Element from Left End
[5, 7]