王道第三章选择题易错总结

第三章

易错题整理

1.栈和队列具有相同的逻辑结构–逻辑结构只分为线性结构和非线性结构(四种基本结构:集合结构,线性结构,树状结构,网络结构)

2.设栈的初始状态为空,当字符序列“n1_”作为栈的输入时,输出长度为3,且可用做c语言标识符的序列有()个

答:3个

思路:数字不能作为标识符首字符,所以总共的排列有(n_1_,n_1,_1n,_n1)这四种,但是最后一个无法在栈中成功输出所以有三个

3.采用非递归方式重写递归程序时必须使用栈。❌理由:也可以用循环写

4.栈的应用:几个特别的适用条件:

迷宫求解:把第一次可能选择的路放入栈中继续扫描最顶上那个可能的路径不仅就出栈继续找栈顶那条路的不可能继续出栈直到找到符合的路径(相当于深搜)

进制转换:输入时从前往后的,但在二进制要从后往前算或者是八进制和十六进制进行分组的时候也是从后往前

深度优先搜索和前中后徐遍历二叉树也用了递归栈的结构o~

但是没有:缓冲区(先进先出策略时用的队列的思想)

5.队列的特殊应用场景:缓冲区,页面置换算法,广度优先搜索

6.注意 操作数操作符,看好题意

7.注意题目要求的是 从栈顶到栈底的输入次序还是 栈底到栈顶的输出次序,如王道课后题第三节最后一个选择,一定要开好输出顺序!

特殊矩阵小节整理:

王道错题:03(算错了无语)12

1.对特殊矩阵采取压缩存储多数情况下会使元素的存取变得复杂,因为要转换位置算法

2.适于存储压缩矩阵的两种存储结构的是 三元组表十字链表

3.看好是按 行优先还是 列优先

4.如果存储上三角而元素在下三角中记得把ij下标换成ji。(王道第11题)

你可能感兴趣的:(王道数据结构二刷题解,算法)