利用python中的列表处理栈_【Python练习】利用列表List构建栈和队列

这个博客介绍了栈和队列这两种基本数据结构。栈是一个后进先出(LIFO)的数据结构,主要操作是push和pop。队列则是一个先进先出(FIFO)的数据结构,常用操作为en和de。文章提供了Python实现的栈和队列示例,包括添加、删除和查看元素的功能。
摘要由CSDN通过智能技术生成

栈是一个后进先出(LIFO)的数据结构,通常具有两个基本方法 push和pop,push负责将新元素添加到栈尾,pop负责将栈尾的元素删除。

#!/usr/bin/env python

""

stack = []

def push():

stack.append(raw_input('Enter new string :').strip())

def pop():

if len(stack) == 0:

print 'Cannot pop from an empty stack!'

else:

print 'Removed [', `stack.pop()` , ']'

def viewStack():

print stack #

CMDs = {'u':push, 'o':pop, 'v':viewStack}

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()

except (EOFError, KeyboardInterrupt,IndexError ):

choice = 'q'

print '\nYou picked :[%s]' % choice

if choice not in 'uovq':

print 'Invalid option,try again'

else:

break

if choice == 'q':

break

else:

CMDs[choice]()

if __name__ == '__main__':

showMenu()

队列

队列是一个先进先出(FIFO)的数据结构,通常具有两个基本方法 push和pop,en负责将新元素添加到队列尾部,de负责将队列首部的元素删除。

#!/usr/bin/env python

""

queue = []

def en():

queue.append(raw_input('Enter new string :').strip())

def de():

if len(queue) == 0:

print 'Cannot delete from an empty queue!'

else:

print 'Removed [', `queue.pop(0)` , ']'

def viewQueue():

print queue

分享到:

sina.jpg

tec.jpg

2012-03-04 23:47

浏览 5586

评论

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值