Python列表模拟堆栈和队列

Python列表模拟堆栈和队列

对列特点:先进先出、后进后出

用列表insert、pop模拟进队出队:

 1 >>> l = []
 2 >>> l.insert(0,'p1')
 3 >>> l.insert(0,'p2')
 4 >>> l.insert(0,'p3')
 5 >>> l
 6 ['p3', 'p2', 'p1']
 7 >>> l.pop()
 8 'p1'
 9 >>> l.pop()
10 'p2'
11 >>> l.pop()
12 'p3'
 

用列表append、pop模拟进队出队:

 
 1 >>> l = []
 2 >>> l.append('p1')
 3 >>> l.append('p2')
 4 >>> l.append('p3')
 5 >>> l
 6 ['p1', 'p2', 'p3']
 7 >>> l.pop(0)
 8 'p1'
 9 >>> l.pop(0)
10 'p2'
11 >>> l.pop(0)
12 'p3' 

堆栈特点:先进后出、后进先出

用列表insert、pop方法模拟进栈出栈:

 
 1 >>> l = []
 2 >>> l.insert(0,'a1')
 3 >>> l.insert(0,'a2')
 4 >>> l.insert(0,'a3')
 5 >>> l
 6 ['a3', 'a2', 'a1']
 7 >>> l.pop(0)
 8 'a3'
 9 >>> l.pop(0)
10 'a2'
11 >>> l.pop(0)
12 'a1' 

用列表append、pop方法模式进栈出栈:

 
 1 >>> l = []
 2 >>> l.append('a1')
 3 >>> l.append('a2')
 4 >>> l.append('a3')
 5 >>> l
 6 ['a1', 'a2', 'a3']
 7 >>> l.pop()
 8 'a3'
 9 >>> l.pop()
10 'a2'
11 >>> l.pop()
12 'a1'

猜你喜欢

转载自www.linuxidc.com/Linux/2016-12/138976.htm