一、压栈操作模拟
#__author:"吉*佳" #date: 2018/10/21 0021 #function:栈 # 栈:即是先进后出的一种数据结构 # (1)模拟压栈操作 stack=[] flag=True while flag: temp = input("请输入压栈元素[输入0代表退出]:") if temp!=str(0): stack.append(temp) else: print('压栈结束,栈内元素为:', stack) # 借助flag退出while循环 flag=False ''' 输出操作: 请输入压栈元素[输入0代表退出]:1 请输入压栈元素[输入0代表退出]:2 请输入压栈元素[输入0代表退出]:3 请输入压栈元素[输入0代表退出]:4 请输入压栈元素[输入0代表退出]:5 请输入压栈元素[输入0代表退出]:0 压栈结束,栈内元素为: ['1', '2', '3', '4', '5'] '''
二、出栈模拟
#__author:"吉勇佳" #date: 2018/10/21 0021 #function:栈 # 栈:即是先进后出的一种数据结构 # (1)模拟压栈操作 stack=[] flag=True while flag: temp = input("请输入压栈元素[输入0代表退出]:") if temp!=str(0): stack.append(temp) else: print('压栈结束,栈内元素为:', stack) # 借助flag退出while循环 flag=False ''' 输出操作: 请输入压栈元素[输入0代表退出]:1 请输入压栈元素[输入0代表退出]:2 请输入压栈元素[输入0代表退出]:3 请输入压栈元素[输入0代表退出]:4 请输入压栈元素[输入0代表退出]:5 请输入压栈元素[输入0代表退出]:0 压栈结束,栈内元素为: ['1', '2', '3', '4', '5'] ''' print("************************分隔符*******************") tt=stack.pop() print("出栈元素",tt) print("栈内元素信息:",stack) tt=stack.pop() print("出栈元素",tt) print("栈内元素信息:",stack) tt=stack.pop() print("出栈元素",tt) print("栈内元素信息:",stack) ''' 输出 请输入压栈元素[输入0代表退出]:1 请输入压栈元素[输入0代表退出]:2 请输入压栈元素[输入0代表退出]:3 请输入压栈元素[输入0代表退出]:4 请输入压栈元素[输入0代表退出]:5 请输入压栈元素[输入0代表退出]:0 压栈结束,栈内元素为: ['1', '2', '3', '4', '5'] ************************分隔符******************* 出栈元素 5 栈内元素信息: ['1', '2', '3', '4'] 出栈元素 4 栈内元素信息: ['1', '2', '3'] 出栈元素 3 栈内元素信息: ['1', '2'] '''
入队与出队操作
队列:
即是先进先出的一种数据结构
在python中,可以通过 collections模块。 queue = collections.deque()来实现入队操作 。相应的出队操作可以用queue.leftpop()即可
#__author:"吉*佳" #date: 2018/10/21 0021 #function:队列 import collections # 队列:即是先进先出的一种数据结构 # (1)模拟入队操作。队列有如下模块可以实现 queue = collections.deque() # 入队 flag=True while flag: temp = input("请输入入队元素[输入0代表退出]:") if temp!=str(0): queue.append(temp) else: print('入队结束,队内元素为:', queue) # 借助flag退出while循环 flag=False ''' 输出: 请输入入队元素[输入0代表退出]:1 请输入入队元素[输入0代表退出]:2 请输入入队元素[输入0代表退出]:3 请输入入队元素[输入0代表退出]:4 请输入入队元素[输入0代表退出]:5 请输入入队元素[输入0代表退出]:0 入队结束,队内元素为: deque(['1', '2', '3', '4', '5']) ''' # 出队模拟 print("************************分隔符*******************") tt=queue.popleft() print("出队元素",tt) print("队内元素信息:",queue) tt=queue.popleft() print("出队元素",tt) print("队内元素信息:",queue) tt=queue.popleft() print("出队元素",tt) print("队内元素信息:",queue) ''' 输出: 请输入入队元素[输入0代表退出]:1 请输入入队元素[输入0代表退出]:2 请输入入队元素[输入0代表退出]:3 请输入入队元素[输入0代表退出]:4 请输入入队元素[输入0代表退出]:5 请输入入队元素[输入0代表退出]:0 入队结束,队内元素为: deque(['1', '2', '3', '4', '5']) ************************分隔符******************* 出队元素 1 队内元素信息: deque(['2', '3', '4', '5']) 出队元素 2 队内元素信息: deque(['3', '4', '5']) 出队元素 3 队内元素信息: deque(['4', '5']) '''