发表于: 2025-07-03 21:01:55

0 13


今天完成的任务:学习任务三,先准备任务三需要的东西。

刚开始看不懂什么东西,师兄说下载Axure,看原型图

安装 【Axure RP9】

安装并汉化完成

接下来看一看树结构

一、树结构核心概念速览

树结构以分层的方式组织数据,每个节点可以有零个或多个子节点。理解树结构,需掌握几个核心术语:

  • 根节点:树的顶层节点,没有父节点
  • 子节点:被其他节点直接连接的节点
  • 叶子节点:没有子节点的节点
  • 树的高度:从根节点到最远叶子节点的最长路径上的节点数


1. 完全二叉树

定义:除最后一层外,其余层节点数全满,且最后一层节点从左到右连续排列。
核心特点

  • 可使用数组高效存储(节点 i 的左子节点为 2i+1,右子节点为 2i+2
  • 层序遍历判断:若遇到空节点后仍有非空节点,则不是完全二叉树
    应用场景:优先队列、堆排序的底层实现


2. 满二叉树

定义:所有层节点数均达到最大值,节点总数为 2^h - 1h 为树高)。


3. 二叉搜索树(BST)

核心规则

  • 左子树所有节点值 < 根节点值
  • 右子树所有节点值 > 根节点值
  • 左右子树均为 BST
    致命缺陷:极端情况下会退化为链表,导致查找效率从 O(log n) 暴跌至 O(n)
    性能优化:引入平衡机制(如 AVL 树、红黑树)


4. 平衡二叉树(AVL 树 & 红黑树)

AVL 树

  • 严格要求左右子树高度差不超过 1
  • 通过左旋、右旋操作保持平衡
  • 适用场景:对查询性能要求极高的场景(如数据库索引)


5. B 树 & B + 树

很相似,所以放一起对比。

B 树

  • 多路平衡搜索树,每个节点可存多个键值对
  • 核心优势:减少磁盘 I/O 次数,适合外存数据存储


明天的计划:让师兄讲解讲解任务三要干什么。


返回列表 返回列表
评论

    分享到