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'