File tree Expand file tree Collapse file tree 1 file changed +49
-0
lines changed Expand file tree Collapse file tree 1 file changed +49
-0
lines changed Original file line number Diff line number Diff line change 1+ class  StackedQueue :
2+ 
3+     def  __init__ (self ):
4+         self .stack  =  Stack ()
5+         self .alternateStack  =  Stack ()
6+ 
7+     def  enqueue (self , item ):
8+         while (not  self .stack .is_empty ()):
9+             self .alternateStack .push (self .stack .pop ())
10+ 
11+         self .alternateStack .push (item )
12+ 
13+         while (not  self .alternateStack .is_empty ()):
14+             self .stack .push (self .alternateStack .pop ())
15+     
16+     def  dequeue (self ):
17+         return  self .stack .pop ()
18+ 
19+     def  __repr__ (self ):
20+         return  repr (self .stack )
21+ 
22+ class  Stack :
23+     def  __init__ (self ):
24+         self .items  =  []
25+ 
26+     def  push (self , item ):
27+         self .items .append (item )
28+ 
29+     def  pop (self ):
30+         return  self .items .pop ()
31+ 
32+     def  size (self ):
33+         return  len (self .items )
34+ 
35+     def  is_empty (self ):
36+         return  self .items  ==  []
37+ 
38+     def  __repr__ (self ):
39+         return  str (self .items )
40+ 
41+ if  __name__  ==  "__main__" :
42+     structure  =  StackedQueue ()
43+     structure .enqueue (4 )
44+     structure .enqueue (3 )
45+     structure .enqueue (2 )
46+     structure .enqueue (1 )
47+     print (structure )
48+     structure .dequeue ()
49+     print (structure )
 
 
   
 
     
   
   
          
    
    
     
    
      
     
     
    You can’t perform that action at this time.
  
 
    
  
    
      
        
     
       
      
     
   
 
    
    
  
 
  
 
     
    
0 commit comments