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

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

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

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

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

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

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

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

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

链式二叉树

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

树个数的遍历

树的叶子的遍历

相关推荐
小李小李快乐不已34 分钟前
哈希表理论基础
数据结构·c++·哈希算法·散列表
AuroraWanderll35 分钟前
C++11(二)核心突破:右值引用与移动语义(上)
c语言·数据结构·c++·算法·stl
CoderYanger36 分钟前
第 479 场周赛Q1——3769. 二进制反射排序
java·数据结构·算法·leetcode·职场和发展
广府早茶36 分钟前
机器人重量
c++·算法
sin_hielo39 分钟前
leetcode 1925
数据结构·算法·leetcode
CoderYanger41 分钟前
A.每日一题——1925. 统计平方和三元组的数目
java·开发语言·数据结构·算法·leetcode·哈希算法
小白程序员成长日记43 分钟前
2025.12.08 力扣每日一题
java·算法·leetcode
XH华43 分钟前
数据结构第七章:队列的学习
数据结构
zz07232043 分钟前
数据结构 —— 并查集
java·数据结构
CQ_YM44 分钟前
数据结构之排序
c语言·数据结构·算法·排序算法