3. 红黑树 红黑树也是一种自平衡的二叉搜索树,较之 AVL,插入和删除时旋转次数更少 红黑树特性 所有节点都有两种颜色:红与黑 所有 null 视为黑色 红色节点不能相邻 ...
3. 红黑树 红黑树也是一种自平衡的二叉搜索树,较之 AVL,插入和删除时旋转次数更少 红黑树特性 所有节点都有两种颜色:红与黑 所有 null 视为黑色 红色节点不能相邻 ...
2. AVL 树 前面介绍过,如果一棵二叉搜索树长的不平衡,那么查询的效率会受到影响,如下图 通过旋转可以让树重新变得平衡,并且不会改变二叉搜索树的性质(即左边仍然小,右边仍...
查找算法 不管是之前学过的数组、链表、队列、还是栈,这些线性结构中,如果想在其中查找一个元素,效率是比较慢的,只有,因此如果你的需求是实现快速查找,那么就需要新的算法设计,也...
2.10 二叉树 二叉树是这么一种树状结构:每个节点最多有两个孩子,左孩子和右孩子 重要的二叉树结构 完全二叉树(complete binary tree)是一种二叉树结构,...
2.9 堆 以大顶堆为例,相对于之前的优先级队列,增加了堆化等方法 建堆 Floyd 建堆算法作者(也是之前龟兔赛跑判环作者): 找到最后一个非叶子节点 从后向前,对每个节点...
2.8 阻塞队列 之前的队列在很多场景下都不能很好地工作,例如 大部分场景要求分离向队列放入(生产者)、从队列拿出(消费者)两个角色、它们得由不同的线程来担当,而之前的实现根...
2.7 优先级队列 无序数组实现 要点 入队保持顺序 出队前找到优先级最高的出队,相当于一次选择排序 视频中忘记了 help GC,注意一下 有序数组实现 要点 入队后排好序...
2.6 双端队列 概述 双端队列、队列、栈对比 定义特点队列一端删除(头)另一端添加(尾)First In First Out栈一端删除和添加(顶)Last In First...
2.5 栈 概述 计算机科学中,stack 是一种线性的数据结构,只能在其一端添加数据和移除数据。习惯来说,这一端称之为栈顶,另一端不能操作数据的称之为栈底,就如同生活中的一...
2.4 队列 概述 计算机科学中,queue 是以顺序的方式维护的一组数据集合,在一端添加数据,从另一端移除数据。习惯来说,添加的一端称为尾,移除的一端称为头,就如同生活中的...
2.3 递归 概述 定义 计算机科学中,递归是一种解决计算问题的方法,其中解决方案取决于同一类问题的更小子集 In computer science, recursion i...
2.2 链表 概述 定义 在计算机科学中,链表是数据元素的线性集合,其每个元素都指向下一个元素,元素存储上并不连续 In computer science, a linked...
二. 基础数据结构 2.1 数组 概述 定义 在计算机科学中,数组是由一组元素(值或变量)组成的数据结构,每个元素有至少一个索引或键来标识 In computer scien...
一. 初识算法 1.1 什么是算法? 定义 在数学和计算机科学领域,算法是一系列有限的严谨指令,通常用于解决一类特定问题或执行计算 In mathematics and co...
Git常用命令速查 创建版本库 修改和提交 查看历史提交 取消 分支与标签 合并与衍合 远程操作
写在前面 2021年10月30日00:44:00 今天写项目测试dkmapper时报的错,插入数据,更新数据,删除数据操作都可以成功 唯独 查询操作报错!通过查阅资料解决问题...
Cookie Cookie概念(来源百度百科) cookie(储存在用户本地终端上的数据)百度百科[https://baike.baidu.com/item/cookie/1...
引言 HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网服务器传输超文本到本地浏览器的传送协议。HTTP 是基于 ...
环形链表 题目地址:141. 环形链表 - 力扣(LeetCode) (leetcode-cn.com)[https://leetcode-cn.com/problems/l...
字符串中第一个唯一字符 题目地址:387. 字符串中的第一个唯一字符 - 力扣(LeetCode) (leetcode-cn.com)[https://leetcode-cn...