# -*- coding:utf-8 -*-
from IPython.core.interactiveshell import InteractiveShell
InteractiveShell.ast_node_interactivity = "all"
class stack():
def __init__(self,data):
if data == None:
self.stack = []
self.point = 0
else:
self.stack = data
self.point = len(data)
def pop(self):
if self.point==0:
print("栈空")
return None
self.point -= 1
tmp = self.stack[-1]
self.stack.pop()
return tmp
def push(self,x):
self.stack.append(x)
self.point += 1
return "push成功"
def isEmpty(self):
if self.point == 0:
return True
return False
def push(node):
# write code here
stackIn.push(node)
print(stackIn.stack)
print(stackOut.stack,"\n")
def pop():
# return xx
while(not stackIn.isEmpty()):
tmp = stackIn.pop()
stackOut.push(tmp)
ans = stackOut.pop()
while(not stackOut.isEmpty()):
tmp = stackOut.pop()
stackIn.push(tmp)
print(stackIn.stack)
print(stackOut.stack,"\n")
return ans
#data = [1,2,3,4,5]
data = None
global stackIn
global stackOut
stackIn = stack(data)
stackOut = stack(None)
# stackIn.isEmpty()
# #stackOut.isEmpty()
push(5)
push(2)
pop()
push(4)
pop()