随笔分类 -  数据结构

动态数组、链表,二叉树、哈希表等数据结构
摘要:B树(B Tree、B 树) B树是一种平衡的多路搜索树,多用于文件系统、数据库的实现 示例: B树特点: 一个节点可以存储超过两个元素,可以拥有超过两个子节点 拥有二叉搜索树的一些性质 平衡,每个节点的所有子树高度一致 比较矮的树 M阶B树的性质(M =2) 假设一个节点存储的元素个数为x 根节点 阅读全文
posted @ 2020-05-04 22:32 松鼠航 阅读(205) 评论(0) 推荐(0)
摘要:AVL树 AVL树是最早发明的自平衡二叉搜索树之一 平衡因子(Balance Factor):某节点的左右子树高度差 AVL树特点: 1. 每个节点的平衡因子只可能1、0、 1(即绝对值 node) { while((node = node.parent) != null){ //判断节点是否平衡 阅读全文
posted @ 2020-04-15 21:06 松鼠航 阅读(305) 评论(0) 推荐(0)
摘要:平衡二叉搜索树 二叉搜索树的问题: 添加:若从小到大添加元素,那么二叉搜索树将退化成链表 删除:删除节点时也可能会导致二叉搜索树退化成链表 平衡(Banlance) 平衡:当节点数量固定时,左右子树的高度越接近,这棵二叉树就越平衡(高度越低) 最理想的状态就是像完全二叉树、满二叉树那样,高度是最小的 阅读全文
posted @ 2020-04-10 23:16 松鼠航 阅读(207) 评论(0) 推荐(0)
摘要:二叉搜索树(Binary Search Tree) 定义:二叉搜索树是二叉树的一种,是应用非常广泛的一种二叉树,英文简称为 BST 性质: 任何一个节点的值都大于其左子树所有节点的值 任意一个节点的值都小于其右子树所有节点的值 它的左右子树也是一棵二叉搜索树 二叉搜索树可以大大提高搜索数据的效率 二 阅读全文
posted @ 2020-04-10 22:58 松鼠航 阅读(241) 评论(0) 推荐(0)
摘要:树形结构 树结构基本概念: 节点、根节点、父节点、子节点、兄弟节点、子树、左子树、右子树; 空树:没有任何节点的树; 节点的度:子树的个数 树的度:所有节点度中的最大值(max) 叶子节点:度为0的节点 非叶子节点:度不为0的节点 层数:根节点在第一层,根节点的子节点在第二层,以此类推 节点的深度: 阅读全文
posted @ 2020-04-10 22:06 松鼠航 阅读(334) 评论(0) 推荐(0)