第一部分 --- 栈和队列的定义与特点
1.线性表中被插入和删除的元素既可以在表头,表尾,也可以在表中
2.栈中的被插入和删除的元素只能够在表尾(栈中的插入叫做入栈,删除叫做出栈,栈具有后进先出的特点)
3.队列中只能够在表尾插入元素,同时也只能够在表头删除元素(队列具有先进先出的特点)
1.最后一个元素第一个出来
上面的所有出栈顺序都是能够实现的,比如第二个 a,b,c的实现方式是a先入栈,然后a出栈,接着是b入栈和出栈,然后是c入栈二号出栈,这样最终得到的结果就是a,b,c
后面的可能都可以通过调整出栈的顺序来实现(入栈的顺序已经规定了,我们无法调整,所以不会有cab这种可能出现,c要出栈的话,c首先要入栈,而c入栈的话ab必定已经入栈)
1.按照顺序表方式存储的栈是顺序栈,按照链表方式存储的栈是链栈
1.随机存取:可以随机访问表中的任意一个元素;后进先出:只能够访问栈顶元素
第二部分 --- 案例引入
1.转换成2进制数就除2,3进制数就除3,转换为K进制数就除K
2.除完后将余数倒着读取得到的结果就是我们的转换结果了
3.将得到的余数依次入栈,所有的余数都入栈后再依次出栈(等价于倒着读取),所有余数出栈完之后就能得到我们的转换结果了
注意!扫描表达式的顺序是自左向右扫描