【愚公系列】软考中级-软件设计师 018-数据结构(二叉树的分类)_软件评测师二叉树知识

  1. 满二叉树(Full Binary Tree):除了叶子节点,每个节点都有两个子节点。
  2. 完全二叉树(Complete Binary Tree):除了最后一层外,其它层的节点都是满的,最后一层的节点都靠左对齐。
  3. 二叉搜索树(Binary Search Tree,BST):对于每个节点,左子树上的所有节点的值都小于等于该节点的值,右子树上的所有节点的值都大于等于该节点的值。
  4. 平衡二叉树(Balanced Binary Tree):对于任意节点,它的左子树和右子树的高度差不大于1。
  5. 线索二叉树(Threaded Binary Tree):在二叉树节点中设置了指向前驱节点和后继节点的线索,可以方便地进行遍历。
  6. 哈夫曼树(Huffman Tree):用于数据压缩,根据数据出现的频率构建的二叉树,频率越高的节点离根节点越近。
  7. Trie树(前缀树):用于字符串的存储和搜索,每个节点代表一个字符串的字符,从根节点到叶子节点的路径表示一个完整的字符串。
  8. B树(B-Tree):一种平衡多路查找树,用于大规模数据的存储和检索,每个节点可以有多个子节点。

🚀一、二叉树的分类

🔎1.线索二叉树

线索二叉树是对二叉树进行加工,使其能够快速遍历所有节点。

在线索二叉树中,除了左右孩子指针,还添加了两个额外的指针:前驱指针和后继指针。这两个指针分别指向当前节点的前驱节点和后继节点。

对于一个二叉树来说,存在多种线索化方式。以下是两种常见的线索化方式:

  1. 前序线索二叉树:在前序遍历过程中进行线索化。对于每个节点,先处理其前驱指针,然后处理左子树,再处理右子树,最后处理后继指针。对于树中的第一个节点,其前驱指针为空,对于树中的最后一个节点,其后继指针为空。
  2. 中序线索二叉树:在中序遍历过程中进行线索化。对于每个节点,先处理其左子树,然后处理前驱指针,然后处理右子树,最后处理后继指针。对于树中的第一个节点,其前驱指针为空,对于树中的最后一个节点,其后继指针为空。

在线索二叉树中,通过前驱和后继指针,可以快速地找到节点的前驱节点和后继节点,从而实现快速遍历。

<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值