数据结构之堆排序和前,中,后,层序遍历,链式二叉树

首先我们要知道升序我们要建小堆,降序建大堆,这与我们的大多人直觉相违背。

因为我们大多数人认为应该将堆顶的数据输出,但如果这样就会导致堆顶出堆以后,堆结构会被破坏,显然我们不能这样。

所有我们反其道而行,每一次将最后一个子叶进行出堆操作。

就不会出现堆结构被破坏了。

再通过数学运算,堆排序的时间复杂度是N*logN;

并且从上往下建堆比从下往上要快。

现在我们要开始学习树的遍历。

树的遍历分三种递归遍历,前,中,后序遍历和一种循环遍历,层序遍历。

链式二叉树

此处是为了了解二叉树的结构,故重点不在增删查改,故为了方便期间,搭建好结点的信息以后,我们手动造树。

树个数的遍历

树的叶子的遍历

相关推荐
byzh_rc19 小时前
[认知计算] 专栏总结
线性代数·算法·matlab·信号处理
qq_4335545420 小时前
C++ manacher(求解回文串问题)
开发语言·c++·算法
歌_顿20 小时前
知识蒸馏学习总结
人工智能·算法
闲看云起20 小时前
LeetCode-day6:接雨水
算法·leetcode·职场和发展
没学上了21 小时前
VLM_一维离散卷积与二维离散卷积(还是复习感觉还行)
算法
黛色正浓21 小时前
leetCode-热题100-贪心合集(JavaScript)
javascript·算法·leetcode
轻微的风格艾丝凡21 小时前
嵌入式定时器计时技巧:用有符号数省略溢出判断的底层逻辑与实践
数据库·算法·dsp开发·嵌入式软件
No0d1es21 小时前
2025年12月 GESP CCF编程能力等级认证C++四级真题
算法·青少年编程·等级考试·gesp·ccf
CodeByV21 小时前
【算法题】快排
算法
一起努力啊~21 小时前
算法刷题--长度最小的子数组
开发语言·数据结构·算法·leetcode