数据结构和算法
数据结构和算法
提里奥丶弗丁
一名二手程序猿,分享一些实用和有趣的技术
展开
-
B树(B-Tree)
B树(B-Tree)是一种多路搜索树,用于在磁盘上存储和查找数据。它具有以下特点: 1. 每个节点可以包含多个子节点,通常用于处理大量数据和磁盘存储。2. 每个节点中的键值按照升序排列,子节点的范围也由这些键值决定。3. B树的节点中至少包含 t-1 个键值(t 为树的最小度数),最多包含 2t-1 个键值。4. 所有叶子节点都在同一层,且不包含数据,用于存储实际数据的节点为内部节点。原创 2024-04-25 16:00:37 · 771 阅读 · 1 评论 -
B+树(B+ Tree)
B+树(B+ Tree)是一种常用的数据结构,通常用于实现数据库索引。它是一种平衡树,具有以下特点: 1- 内部节点不存储数据,只存储键值用于索引。2- 叶子节点之间通过指针连接,形成有序链表便于范围查询。2- 每个节点的子节点数量在一定范围内,使得树的高度更低,提高检索效率。原创 2024-04-25 16:02:24 · 326 阅读 · 1 评论 -
AVL树(AVL Tree)
AVL树是一种自平衡的二叉搜索树,它具有以下特性:1. 每个节点的左子树和右子树的高度最多相差1(平衡性)。2. 每个节点存储一个平衡因子(Balance Factor),即其左子树的高度减去右子树的高度。AVL树通过旋转操作来保持树的平衡,包括左旋转、右旋转、左右旋转和右左旋转等操作。在插入和删除节点时,AVL树会根据节点的平衡因子进行调整,以保持树的平衡性。原创 2024-04-19 14:01:45 · 221 阅读 · 0 评论 -
红黑树(Red-Black Tree)
红黑树(Red-Black Tree)是一种自平衡的二叉查找树,它具有以下特性: 1. 每个节点要么是红色,要么是黑色。2. 根节点是黑色的。3. 每个叶子节点(NIL节点)是黑色的。4. 如果一个节点是红色的,则它的子节点必须是黑色的(反之不一定成立)。5. 从任一节点到其每个叶子节点的所有路径都包含相同数目的黑色节点。原创 2024-04-19 13:45:28 · 484 阅读 · 0 评论 -
平衡二叉树(Balanced Binary Tree)
平衡二叉树(Balanced Binary Tree)是一种特殊的二叉搜索树,它保持树的高度平衡,从而确保各种操作的时间复杂度始终为O(log n)。在平衡二叉树中,任何节点的左子树和右子树的高度差不超过1。原创 2024-04-15 09:09:45 · 339 阅读 · 1 评论 -
二叉搜索树(Binary Search Tree)
二叉搜索树(Binary Search Tree,BST)是一种常见的数据结构,它具有以下特点: 1. 每个节点最多有两个子节点,分别称为左子节点和右子节点。2. 对于每个节点,左子节点的值小于该节点的值,右子节点的值大于该节点的值。3. 中序遍历二叉搜索树可以得到一个有序的序列。原创 2024-04-15 09:09:18 · 242 阅读 · 0 评论 -
二叉树(Binary Tree)
实现了二叉树的插入操作和先序遍历算法。原创 2024-04-12 10:41:03 · 246 阅读 · 1 评论 -
写一个简易的树结构,增加节点和遍历算法
和一个用于深度优先遍历的方法。原创 2024-04-12 10:30:33 · 164 阅读 · 0 评论