最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

Python数据结构之堆栈实例代码

来源:动视网 责编:小采 时间:2020-11-27 14:26:50
文档

Python数据结构之堆栈实例代码

Python数据结构之堆栈实例代码:Python 堆栈堆栈是一个后进先出(LIFO)的数据结构. 堆栈这个数据结构可以用于处理大部分具有后进先出的特性的程序流 . 在堆栈中, push 和 pop 是常用术语:push: 意思是把一个对象入栈.pop: 意思是把一个对象出栈.下面是一个由 Python 实现的简单的堆栈
推荐度:
导读Python数据结构之堆栈实例代码:Python 堆栈堆栈是一个后进先出(LIFO)的数据结构. 堆栈这个数据结构可以用于处理大部分具有后进先出的特性的程序流 . 在堆栈中, push 和 pop 是常用术语:push: 意思是把一个对象入栈.pop: 意思是把一个对象出栈.下面是一个由 Python 实现的简单的堆栈


Python 堆栈

堆栈是一个后进先出(LIFO)的数据结构. 堆栈这个数据结构可以用于处理大部分具有后进先出的特性的程序流 .
在堆栈中, push 和 pop 是常用术语:

push: 意思是把一个对象入栈.

pop: 意思是把一个对象出栈.

下面是一个由 Python 实现的简单的堆栈结构:

stack = [] # 初始化一个列表数据类型对象, 作为一个栈
 
def pushit(): # 定义一个入栈方法
 stack.append(raw_input('Enter New String: ').strip()) 
 # 提示输入一个入栈的 String 对象, 调用 Str.strip() 保证输入的 String 值不包含多余的空格
 
def popit(): # 定义一个出栈方法
 if len(stack) == 0:
 print "Cannot pop from an empty stack!"
 else:
 print 'Remove [', `stack.pop()`, ']'
 # 使用反单引号(` `)来代替 repr(), 把 String 的值用引号扩起来, 而不仅显示 String 的值
 
def viewstack(): # 定义一个显示堆栈中的内容的方法
 print stack
 
CMDs = {'u':pushit, 'o':popit, 'v':viewstack}
# 定义一个 Dict 类型对象, 将字符映射到相应的 function .可以通过输入字符来执行相应的操作
 
def showmenu(): # 定义一个操作菜单提示方法
 pr = """
 p(U)sh
 p(O)p
 (V)iew
 (Q)uit
 
 Enter choice: """
 
 while True:
 while True:
 try:
 choice = raw_input(pr).strip()[0].lower()
 # Str.strip() 去除 String 对象前后的多余空格
 # Str.lower() 将多有输入转化为小写, 便于后期的统一判断
 # 输入 ^D(EOF, 产生一个 EOFError 异常)
 # 输入 ^C(中断退出, 产生一个 keyboardInterrupt 异常)
 
 except (EOFError, KeyboardInterrupt, IndexError):
 choice = 'q'
 
 print '
You picked: [%s]' % choice
 
 if choice not in 'uovq':
 print 'Invalid option, try again'
 else:
 break
 
 
 if choice == 'q':
 break
 CMDs[choice]()
 # 获取 Dict 中字符对应的 functionName, 实现函数调用
 
if __name__ == '__main__':
 showmenu()

NOTE: 在堆栈数据结构中, 主要应用了 List 数据类型对象的 容器 和 可变 等特性, 表现在 List.append() 和 List.pop() 这两个列表类型内建函数的调用.

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

更多Python 数据结构之堆栈实例代码相关文章请关注PHP中文网!

文档

Python数据结构之堆栈实例代码

Python数据结构之堆栈实例代码:Python 堆栈堆栈是一个后进先出(LIFO)的数据结构. 堆栈这个数据结构可以用于处理大部分具有后进先出的特性的程序流 . 在堆栈中, push 和 pop 是常用术语:push: 意思是把一个对象入栈.pop: 意思是把一个对象出栈.下面是一个由 Python 实现的简单的堆栈
推荐度:
标签: 数据 示例 实例
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top