File tree Expand file tree Collapse file tree 1 file changed +58
-0
lines changed Expand file tree Collapse file tree 1 file changed +58
-0
lines changed Original file line number Diff line number Diff line change
1
+ class Stack :
2
+ Top = - 1
3
+
4
+ def __init__ (self ,size ):
5
+ self .stack = [0 for i in range (size )]
6
+
7
+ def push (self , value ):
8
+ if (Stack .Top != len (self .stack )- 1 ):
9
+ Stack .Top += 1
10
+ self .stack [Stack .Top ] = value
11
+ else :
12
+ print ("Overflow: Stack is Full" )
13
+
14
+ def pop (self ):
15
+ if (Stack .Top == - 1 ):
16
+ print ("Underflow: Stack is Empty" )
17
+ else :
18
+ Stack .Top -= 1
19
+
20
+ def peek (self ):
21
+ if (Stack .Top == - 1 ):
22
+ print ("Underflow: Stack is Empty" )
23
+ else :
24
+ return (self .stack [Stack .Top ])
25
+
26
+ def traverse (self ):
27
+ if (Stack .Top == - 1 ):
28
+ print ("Underflow: Stack is Empty" )
29
+ else :
30
+ for i in range (Stack .Top ,- 1 ,- 1 ):
31
+ print (self .stack [i ], end = " " )
32
+
33
+ def is_Full (self ):
34
+ if (Stack .Top == len (self .stack )- 1 ):
35
+ return True
36
+ else :
37
+ return False
38
+
39
+ def is_Empty (self ):
40
+ if (Stack .Top == - 1 ):
41
+ return True
42
+ else :
43
+ return False
44
+
45
+ # Driver Code
46
+ data = Stack (5 )
47
+ data .traverse ()
48
+ data .push (5 )
49
+ data .push (36 )
50
+ data .push (43 )
51
+ data .traverse ()
52
+ data .push (33 )
53
+ data .traverse ()
54
+ print (data .peek ())
55
+ data .pop ()
56
+ data .traverse ()
57
+ print (data .is_Empty ())
58
+ print (data .is_Full ())
You can’t perform that action at this time.
0 commit comments