红黑树
摘要:红黑树,一种二叉查找树,但在每个结点上增加一个存储位表示结点的颜色,可以是Red或Black。 通过对任何一条从根到叶子的路径上各个结点着色方式的限制,红黑树确保没有一条路径会比其他路径长出俩倍,因而是接近平衡的。 红黑树的5个特性 根节点是黑色。 每个节点要么是红色要么是黑色。 每个叶结点(叶结点
阅读全文
posted @
2021-09-06 14:47
公众号/架构师与哈苏
阅读(39)
推荐(0) 编辑
散列表(Hash Table)
摘要:散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。 常用的方法 链地址法:数组和链表来实现(HashMap)
阅读全文
posted @
2021-09-06 14:35
公众号/架构师与哈苏
阅读(42)
推荐(0) 编辑
链表(Link)
摘要:链表是一种数据结构,和数组同级。比如,java中我们使用的ArrayList,其实现原理是数组。而LinkedList的实现原理就是链表在进行循环遍历效率不高,但是插入和删除时优势明显。 链表的类型 单向链表 双向链表 单向循环链表 双向循环链表
阅读全文
posted @
2021-09-06 14:16
公众号/架构师与哈苏
阅读(243)
推荐(0) 编辑
队列(queue)
摘要:队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。
阅读全文
posted @
2021-09-06 11:30
公众号/架构师与哈苏
阅读(343)
推荐(0) 编辑
栈(stack)
摘要:栈(stack)是限制插入和删除只能在一个位置上进行的表,该位置是表的末端,叫做栈顶(top)。它是后进先出(LIFO)的。对栈的基本操作只有push(进栈)和(出栈)两种,前者相当于插入,后者相当于删除最后添加的元素。
阅读全文
posted @
2021-09-06 11:23
公众号/架构师与哈苏
阅读(450)
推荐(0) 编辑