1.栈结构,其实就是一个后进先出的一个线性表,只能在栈顶压入或弹出元素。用列表表示栈,则向栈中压入元素,可以用列表的append()方法来实现,弹出栈顶元素可以用列表的pop()方法实现。
1 >>> x=[] #创建一个空列表,此处表示栈 2 >>> x 3 [] 4 >>> x.append('a') #压入元素'a' 5 >>> x 6 ['a'] 7 >>> x.append('b') #压入元素'b' 8 >>> x 9 ['a', 'b']10 >>> x.pop() #弹出栈顶元素'b'11 'b'12 >>> x13 ['a']14 >>> x.pop() #弹出栈顶元素'a'15 'a'16 >>> x17 []18 >>> x.pop() #试图对一个空栈做弹出操作,会报异常19 Traceback (most recent call last):20 File "", line 1, in 21 IndexError: pop from empty list
2.队列,其实就是一个先进先出的线性表,只能在队首执行删除操作,在队尾执行插入操作。用列表表示队列,可以用append()方法实现在队尾插入元素,用pop(0)方法实现在队首删除元素。
>>> x=[]>>> x.append('a')>>> x['a']>>> x.append('b')>>> x['a', 'b']>>> x.pop(0)'a'>>> x.pop(0)'b'>>> x.pop(0)Traceback (most recent call last): File "", line 1, in IndexError: pop from empty list