栈是先进后出的线性表
一个应用是表达式求值,先把中缀表达式转化成后缀表达式,然后对后缀表达式求值
中缀转后缀,1,遇到数字,输出,中缀表达式里面数字的顺序和后缀表达式是一样的,2,遇到左括号入栈,3,遇到右括号,一直出栈输出,直到遇到左括号,并且把左括号也出栈,4,遇到运算符,只要栈顶的优先级大于等于当前的,就出栈,最后把新的运算符入栈,5,把栈里面剩余的运算符出栈
队列是先进先出的线性表
除了普通的队列,常用的还有优先队列,双端队列
链表是一种插入删除比较方便的线性表
我们可以使用数组来模拟链表,数组的下标就是这个链表元素的地址,同时设置一个头节点一个尾节点,来统一操作