- 博客(14)
- 收藏
- 关注
原创 c语言:深入剖析数组的排序——之冒泡排序法
冒泡排序法如下图所示,是每次都从头到尾比较相邻的两个元素,一共要从头到尾循环n-1次。为什么是n-1次呢?以从小到大排序为例来说吧,每次都交换较大的数到后面,所以经过第一次的从头到尾比较交换后发现整个数组中最大的数已经到了最后面,也就是说,第二次循环时会将第二大的数移动到倒数第二的位置,依次类推,到了倒数第一大的数也就是最小的那个数时,其实在第二小的数排完后,最小的数只能呆在第一个位置,所以并不需要再次重复排列,所以是n-1次的外层循环。
2025-04-26 11:04:54
412
原创 线性表的顺序存储结构——应对各种顺序表的建立方法以及初始化(二)
接上文,顺序表的构造方法在不同的题目要求下需要有不同的改进,本篇提到了PTA上的一道更复杂的例题做简要分析。
2025-04-24 22:15:45
223
原创 线性表的顺序存储结构——应对各种顺序表的建立方法以及初始化(一)
线性表的顺序存储结构,也叫顺序表,在PTA不同的题干要求下的建立和初始化有所调整。
2025-04-22 23:55:24
267
原创 凹入表示法(非递归先序遍历)输出二叉树的思考方向
主要的思路就是在结点的数据结构定义一个ceng,用于储存每个结点的深度信息,先初始化根结点的深度为1,然后每次进队列前都让孩子结点的深度等于双亲结点的深度加1,就可以得到每一个结点的深度。1.首先我想到直接在每个结点进栈后设置一个flag,然后每次n减一计算层数,但是并不能达到理想的效果,因为有些层中不只有一个结点,不能单纯的减一计算。2.尝试利用BTHeight函数通过求结点的高度获得层数,显然,这个方法也行不通,因为这个函数只能求得某个结点子树的高度,而不是结点的层数。
2025-04-19 17:44:13
261
原创 二叉树的性质与应用
1)树的总结点数等于各个分支数的结点的总和,则二叉树结点数n=n0+n1+n2.2)二叉树的分支数等于一个分支的结点数+有两个分支的结点数*2,即总分支=n1+2n2.3)由树的性质一可知,二叉树的结点数n=分支+1.综合以上三个式子,整理得到n0=n2+1,即叶子结点数等于双分支结点数加1.
2025-04-17 19:51:53
539
原创 博客摘录「 2021-10-21 74 题 实验7-1-4-一维数组 找出不是两个数组共有的元素 (20 分)」2024年11月17日
/输出结尾无空格的格式。
2024-11-17 10:56:50
174
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅