19道综合算法练习题(纯手写可能有误明确思路即可)

1. 循环双向链表判断对称(注意奇数情况)

image-20231212195118954

2. 排序二叉树输出逆向数列(非递归)

image-20231212200744377

3.返回链表最小值 删除奇数节点

image-20231212201848954

4.孩子兄弟表示法层序(空树处理)

image-20231212204622190

5.删除单循环链表的前驱(注意赋值)

(无头节点,无首元素节点)

image-20231212203137548

6. 判断正定二叉树(空节点处理别忘)

子树不存在度为1的节点

image-20231212205446216

7.删除所有值为x的元素(注意传参)

注意函数参数。

image-20231212210625340

8.仅尾指针链队列插入删除(别忘记赋值)

image-20231212213928372

9.查找值为e的父节点(注意是对父节点访问)

image-20231212214227847

10.任一元素的划分(注意最后枢轴的赋值)

image-20231213212452831

11. 二叉排序树的构建

image-20231213213346604

12.两个递增合成递减(反转注意指针备份)

image-20231213213628034

image-20231213213617170

13.孩子兄弟二叉树的后序问题

image-20231213214503625

14.堆排序

应该没啥问题,没有调试过,但应付笔试绰绰有余了

搞清楚下沉的过程好吧,最难的部分应该是282-285行了。

image-20231213215018745

image-20231213215007441

15.一个链表分类三链表(尝试头插)

image-20231214204337080

16.非递归DFS(基于邻接表)

image-20231214211203798

17.BFS+两点最短距离+极大联通子图个数(邻接表)

image-20231214212056319

image-20231214212104752

18. 拓扑排序(基于邻接矩阵)

这里尝试使用邻接矩阵实现了。

注意刚开始最好的做法是初始化他们的入度,然后再遍历入度表Indegree

image-20231214205636135

19.构建链表(尾插版本)

image-20231214205741330

posted @ 2023-12-14 21:24  yuezi2048  阅读(28)  评论(0编辑  收藏  举报