'''
1-队列,先进先出
'''
queue=[]
#入队
def enqueue(queue,element):
queue.append(element)
enqueue(queue,'a')
enqueue(queue,'b')
enqueue(queue,'c')
enqueue(queue,'d')
#出队--默认删除第一个元素
def dequeue(queue):
if len(queue)==0:
return
e=queue[0]
del queue[0]
return e
print dequeue(queue)
print dequeue(queue)
print dequeue(queue)
print dequeue(queue)
'''栈:先入后出 '''
stack=[]
'''2-栈 '''
#入栈
def enstack(stack,element):
stack.append(element)
enstack(stack,1)
enstack(stack,2)
enstack(stack,3)
enstack(stack,4)
#出栈
def destack(stack):
if len(stack)==0:
return
e=stack[-1]
del stack[-1]
return e
print destack(stack)
print destack(stack)
print destack(stack)
print destack(stack)
''' 进栈:一次多个参数
*args 接收多个参数,将接收的参数转换为元组
'''
stack_2=[]
def super_enstack(stack,*args):
for e in args:
stack_2.append(e)
super_enstack(stack_2,6,2,1,3,4,5)
print stack_2
1-队列,先进先出
'''
queue=[]
#入队
def enqueue(queue,element):
queue.append(element)
enqueue(queue,'a')
enqueue(queue,'b')
enqueue(queue,'c')
enqueue(queue,'d')
#出队--默认删除第一个元素
def dequeue(queue):
if len(queue)==0:
return
e=queue[0]
del queue[0]
return e
print dequeue(queue)
print dequeue(queue)
print dequeue(queue)
print dequeue(queue)
'''栈:先入后出 '''
stack=[]
'''2-栈 '''
#入栈
def enstack(stack,element):
stack.append(element)
enstack(stack,1)
enstack(stack,2)
enstack(stack,3)
enstack(stack,4)
#出栈
def destack(stack):
if len(stack)==0:
return
e=stack[-1]
del stack[-1]
return e
print destack(stack)
print destack(stack)
print destack(stack)
print destack(stack)
''' 进栈:一次多个参数
*args 接收多个参数,将接收的参数转换为元组
'''
stack_2=[]
def super_enstack(stack,*args):
for e in args:
stack_2.append(e)
super_enstack(stack_2,6,2,1,3,4,5)
print stack_2