Skip to content

Latest commit

 

History

History
76 lines (59 loc) · 4.03 KB

File metadata and controls

76 lines (59 loc) · 4.03 KB

考试重点

Important

  • P117 归并排序
  • 第八章最后一节

以上不考

第一章

  • 不会考定义
  • 重点考时间复杂度的计算或者频度的计算(准备这个就行)
  • 课后习题第一题到第四题都属于上述知识点,都可以去看看

第二章(重点,栈、队列、顺序表)

  • 特别是程序设计、算法题、算法填空、算法问答、手写代码都可能出现这一章的东西
  • 栈的后进先出、队列的先进先出特点的题目可能出现解答题
  • 已知队尾、位标和长度求队头(即三者之间的关系)、求余运算的使用
  • 单链表、双链表的构建与计算
  • 算法题变化大,建议参照 Anyview,从基本操作开始到应用变化都很大
  • 会有时间复杂度的要求

第三章(排序)

  • P86 注意写序列的题目,本页第一道大题让写出每种排序的每一趟结果,这种题目很常见
  • 本章算法题不多,考经典排序算法的写法或者一些变换(排序时直接插入排序时换哨位等)
  • 考点较少

第四章(查找)

  • 注意和后面章节的查找问题放在一起考,可能会考平均查找长度
  • 根据设计好的哈希表求
    • 线性法画哈希表,求 ASL
    • 删除某一元素、插入某一元素的变化
  • 后面的查找:二叉查找树
  • 可能的算法题
    • 各种基本操作的实现
    • 个别变换的应用(例如习题 6)

第五章(递归,但夹了排序、广义表)

  • P124 第三题有序表按照折半查找写出查找某一元素的情况,求 ASL
  • 会让写每一趟的排序结果,例如同一页的第四题冒泡、第五题快排、第六第七题归并排序
  • 广义表:P124 第八题求表头表尾,第九题求深度长度,第十题画存储结构(这题是去年还是前年的题)

第六章(特殊的二叉树)

  • 完全手写代码的题目也可能会来源于本章(还有是第二张)
  • 解答题多,算法题也多
  • 二叉树的应用、二叉查找树、平衡二叉树,重点多
  • 书本解答题第一题:考察二叉树性质,第二题说简单(没看书),第三题说是写先序中序后序遍历,注意这类题目的拔高题,让你还原二叉树
  • 堆的知识点:大顶堆、小顶堆的判断,给出删除最大/最小堆后的堆,考察筛选操作
  • 第六题:写初始堆和每一趟的堆
  • 第九题:考察二叉查找树,构造以及计算 ASL
  • 第十题:平衡二叉树的构造
  • 算法:Anyview 里面有很多,复习的时候与第二张同等地位对待

第七章(树和森林)

  • P188 第三题:按照孩子兄弟法把树转换为二叉树或者将二叉树还原为树/森林
  • 第四题:关于树的存储结构,考双亲孩子表示方法、树的遍历
  • 遍历是重点,会让写遍历序列或者考察应用
  • 孩子兄弟方法两个指针容易发生变化
  • 并查集的优化,如何提高并查集的效率(有两种方法,课本上)
  • B 树:考算法的可能性几乎为 0,特别是插入删除。查找还有点可能。解答题上参考第七题:B 树插入新节点发生分裂。第八(构造三阶 B 树,插入两个节点,超出边界会分裂;删除关键字少时会发生节点合并)、第九题画出 B 树(高阶 B 树,例如五阶)
  • 重点:树的遍历和应用

第八章(图、邻接矩阵)

  • 必有一道解答题、一道算法题(可能是填空或者问答),往年来看
  • P224 第一题,第一问考察邻接数组的存储结构,第二问求所有可能的拓扑序列,所有一定要按照某种顺序去构造,不容易漏掉
  • 第二题(重点)反过来告诉存储结构(图 8.3.1),第二问遍历,第三问从某点开始的广度、深度优先序列
  • P225 第三题,普利姆、克鲁斯卡尔求最小生成树
  • 第四题,用迪杰斯克拉算法求最短路径
  • 注意看作业系统讲过的关键算法,特别是图的遍历、深度、广度算法;利用深度广度进行应用(P206 算法 8.1.4 和算法 8.1.5)