摘要: 1. 红黑树的概念 红黑树从平衡二叉搜索树延伸出来的一种较为复杂的数据结构,它会对树的各个节点进行着色标记(红色和黑色),相对于AVL树来说,牺牲了部分平衡性以换取插入/删除操作时少量的旋转操作,(插入最多需要旋转2次,删除最多需要旋转3次),整体来说性能要优于AVL树。在插入和删除操作的时候依据节 阅读全文
posted @ 2023-01-12 23:06 无敌小豆包 阅读(65) 评论(0) 推荐(0)
摘要: 1. 二叉搜索树 二叉搜索树又称二叉排序树,他的左子树上的节点都小于根节点,他的右子树上的节点都大于根节点,每一个左右子树又是一个二叉搜索树 2. 删除节点的几种情况: 3. 二叉搜索树的实现: # 构建节点类 class BiTreeNode: def __init__(self, item): 阅读全文
posted @ 2023-01-12 12:44 无敌小豆包 阅读(40) 评论(0) 推荐(0)
摘要: 1. AVL树的概念 AVL树又称为高度搜索树,它是一个特殊的二叉搜索树,当元素接近于有序的时候,二叉树也会变成一个单链树,所以AVL树就是平衡二叉搜索树,当插入一个节点,树的任意一个左右子树的高度差都<=1,称为AVL树 上图左边的二叉树的每个节点的左右子树的最大高度差都不超过1,而右边的二叉树的 阅读全文
posted @ 2023-01-12 12:39 无敌小豆包 阅读(69) 评论(0) 推荐(0)