本文实例讲述了Python基于列表模拟堆栈和队列功能。分享给大家供大家参考,具体如下:
之前的文章http://www.zzvips.com/article/67339.html介绍了堆栈与队列的Python实现方法,这里使用列表来模拟一下堆栈与队列的简单操作。
一、队列特点:先进先出、后进后出
用列表insert、pop模拟进队出队:
1
2
3
4
5
6
7
8
9
10
11
12
|
>>> l = [] >>> l.insert( 0 , 'p1' ) >>> l.insert( 0 , 'p2' ) >>> l.insert( 0 , 'p3' ) >>> l [ 'p3' , 'p2' , 'p1' ] >>> l.pop() 'p1' >>> l.pop() 'p2' >>> l.pop() 'p3' |
用列表append、pop模拟进队出队:
1
2
3
4
5
6
7
8
9
10
11
12
|
>>> l = [] >>> l.append( 'p1' ) >>> l.append( 'p2' ) >>> l.append( 'p3' ) >>> l [ 'p1' , 'p2' , 'p3' ] >>> l.pop( 0 ) 'p1' >>> l.pop( 0 ) 'p2' >>> l.pop( 0 ) 'p3' |
二、堆栈特点:先进后出、后进先出
用列表insert、pop方法模拟进栈出栈:
1
2
3
4
5
6
7
8
9
10
11
12
|
>>> l = [] >>> l.insert( 0 , 'a1' ) >>> l.insert( 0 , 'a2' ) >>> l.insert( 0 , 'a3' ) >>> l [ 'a3' , 'a2' , 'a1' ] >>> l.pop( 0 ) 'a3' >>> l.pop( 0 ) 'a2' >>> l.pop( 0 ) 'a1' |
用列表append、pop方法模式进栈出栈:
1
2
3
4
5
6
7
8
9
10
11
12
|
>>> l = [] >>> l.append( 'a1' ) >>> l.append( 'a2' ) >>> l.append( 'a3' ) >>> l [ 'a1' , 'a2' , 'a3' ] >>> l.pop() 'a3' >>> l.pop() 'a2' >>> l.pop() 'a1' |
希望本文所述对大家Python程序设计有所帮助。
原文链接:https://www.cnblogs.com/chengtai/p/6086897.html