Skip to content

mach4101/wangdao_exercise

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

wangdao_exercise

王道课后习题代码 目前的更新情况:已经全部更新,408真题或者少量较麻烦的题目未写

Note:由于目前本仓库有两位作者,mach4101和wulnut,因此目前有两种代码风格供大家查看,其中以mach4101作为后缀名的文件为mach4101所写。

视频讲解:(暂不更新)

第二章 线性表

2.2.3 综合应用题 😉

  • ✔ 第一题:删除顺序表中最小元素
  • ✔ 第二题:顺序表逆置
  • ✔ 第三题:删除所有值为x的元素
  • ✔ 第四题:有序顺序表中删除s到t之间的元素
  • ✔ 第五题:顺序表中删除s到t之间的元素
  • ✔ 第六题:有序表去重
  • ✔ 第七题:合并两个顺序表
  • ✔ 第八题:将两个线性表的位置互换
  • ✔ 第九题:递增有序的线性表查找x
  • ✔ 第十题:统考题
  • ✔ 第十一题:统考题
  • ✔ 第十二题:统考题
  • ✔ 第十三题:统考题
  • ✔ 第十四题:统考题

2.3.7 综合应用题 😉

  • ✔ 第一题:删除不带头结点L的所有值为x的结点
  • ✔ 第二题:带头结点的链表L中,删除所有值为x的结点
  • ✔ 第三题:逆向输出单链表
  • ✔ 第四题:带头结点的单链表L中删除最小值的结点
  • ✔ 第五题:逆置单链表
  • ✔ 第六题:带头结点的单链表L,设计算法使其递增有序
  • ✔ 第七题:无序单链表中删除介于两个给定值之间的元素
  • ✔ 第八题:寻找两个单链表的公共结点
  • ✔ 第九题:按照递增次序输出单链表中各结点的数据元素并释放空间
  • ✔ 第十题:按照奇偶拆分链表
  • ✔ 第十一题:按照题目要求拆分链表
  • ✔ 第十二题:有序单链表去重
  • ✔ 第十三题:两个递增排列的线性表,归并为一个递减的链表
  • ✔ 第十四题:单链表A和B中的公共结点组成链表C,不破坏原结点
  • ✔ 第十五题:将单链表A和B的元素交集存放到A链表中
  • ✔ 第十六题:判断单链表B是否是单链表A的连续子序列
  • 后面的循环链表先暂时放一放,考的不多,之后有空就写,没空就不写了。

第三章 栈、队列和数组

3.1.4 综合应用题 😉

  • ✔ 前两题不是编程题,skip
  • ✔ 第三题:判断序列合法性
  • ✔ 第四题:判断带头结点的链表是否中心对称
  • ✔ 第五题:两栈共享空间

3.2.5 综合应用题 😉

  • ✔ 第一题:循环队列添加tag识别队空队满
  • ✔ 第二题:利用栈来实现队列中的元素逆置
  • ✔ 第三题:利用两个栈来模拟队列

3.3.6 综合应用题 😉

  • ✔ 第一题:括号匹配
  • ✔ 第二题:栈道模拟
  • ✔ 第三题:用栈实现递归函数的非递归
  • 第四题有空再看

第四章 串

串我们不考,而且也没有什么代码题,考场上不可能让你手写KMP的,所以跳过

第五章 树与二叉树

5.2.3 综合应用题 😉

  • ✔ 第五题:顺序存储结构的二叉树求编号i和j的最近公共祖先

5.3.3 综合应用题 😉

  • ✔ 第三题:后序遍历非递归
  • ✔ 第四题:二叉树自下而上,自右到左的层次遍历算法
  • ✔ 第五题:二叉链表结构的二叉树,非递归求高度
  • ✔ 第六题:知道先序和中序,建立二叉树的二叉链表
  • ✔ 第七题:判断一棵二叉树是否是完全二叉树
  • ✔ 第八题:计算一颗给定二叉树的所有双分支结点个数
  • ✔ 第九题:交换二叉树的左右子树
  • ✔ 第十题:先序遍历的第k个结点的值
  • ✔ 第十一题:对于每个元素值为x的结点,删除以它为根的子树并释放空间
  • ✔ 第十二题:打印值为x的结点的所有祖先
  • ✔ 第十三题:最近公共祖先
  • ✔ 第十四题:二叉链表结构的二叉树算树的宽度
  • ✔ 第十五题:一颗满二叉树,知道先序求后序
  • ✔ 第十六题:将二叉树的叶子结点从左到右串成一个链表
  • ✔ 第十七题:判断两个二叉树是否相似
  • 第十八题线索二叉树考代码不多, skip

5.4.4 综合应用题 😉

  • ✔ 第四题:孩子兄弟表示法的森林叶子结点数
  • ✔ 第五题:孩子兄弟表示法:递归求深度
  • 第六题不会...

第六章 图

6.2.6 综合应用题 😉

  • ✔ 第四题:图的邻接表转换成邻接矩阵
  • ✔ 邻接表的写法
  • ✔ 邻接矩阵的写法

6.3.4 综合应用题 😉

  • ✔ 第二题:无向图G是否是一棵树
  • ✔ 第三题:DFS的非递归形式
  • ✔ 第四题:使用DFS和BFS判断有向图中是否有vi到vj的路径
  • ✔ 第五题:输出从顶点vi到vj的所有路径

第七章 查找

7.2.4 综合应用题 😉

  • ✔ 第五题:折半查找递归算法
  • ✔ 第六题(顺序表):找到指定结点,与其后面的元素交换位置
  • ✔ 第六题(链表)

7.3.4 综合应用题 😉

  • ✔ 第六题:判断给定的二叉树是否是二叉排序树
  • ✔ 第七题:求出指定结点再二叉排序树中的层次
  • ✔ 第八题:利用二叉树的遍历思想判断二叉树是否是高度平衡的二叉树
  • ✔ 第九题:求出给定二叉排序树中的最小和最大关键字
  • ✔ 第十题 :从大到小输出二叉排序树中值不小于k的关键字
  • 第十一题,有些复杂,放了

第八章 排序

8.3.3 综合应用题 😉

  • ✔ 第二题:双向冒泡排序
  • ✔ 第三题:将顺序表的奇数元素移动到偶数前面
  • ✔ 第四题:重写快排,枢纽随机
  • ✔ 第五题:第k小元素
  • ✔ 第六题:荷兰国旗问题

8.4.3 综合应用题 😉

  • ✔ 第四题:在单链表上进行选择排序
  • ✔ 第五题:判断数据序列是否构成一个小根堆

Stargazers over time

Stargazers over time

About

王道课后习题代码

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages