数据结构
文章平均质量分 93
Ombré_mi
这个作者很懒,什么都没留下…
展开
-
数据结构 --- 【Map 和 Set】详解
本章目标掌握 Map/Set 及实际实现类 HashMap/TreeMap/HashSet/TreeSet 的使用 掌握 TreeMap 和 TreeSet 背后的数据结构搜索树的原理和简单实现 掌握 HashMap 和 HashSet 背后的数据结构哈希表的原理和简单实现Map 和 Set 的概念Map 和 Set 是一种专门用来进行搜索的关联式容器或者数据结构;关联式容是用来存储数据的,与序列式容器不同的是,其里面存储的是<key, value>结构的键值对,在数.原创 2022-03-22 16:02:48 · 1659 阅读 · 9 评论 -
数据结构——【排序】详解
一. 排序💨1.1 基本概念排序(sorting)又称分类,就是将一组任意序列得数据元素按一定得规律进行排列(按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作),使之成为有序序列。平时的上下文中,如果提到排序,通常指的是排升序(非降序)。通常意义上的排序,都是指的原地排序(in place sort)。1.2 稳定性定义:数组 arr 中有若干元素,其中 A元素和 B元素相等,并且 A元素在 B元素前面,如果使用某种排序算法排序后,能够保证 A元素依然在 B元素的前面,可原创 2022-03-14 10:42:37 · 8409 阅读 · 15 评论 -
数据结构——【优先级队列】详解
目录一. PriorityQueuePriorityQueue 简介继承关系PriorityQueue 示例二. Comparable 比较器Compara 接口三. Comparator 比较器Comparator 接口四. 底层原理一. PriorityQueuePriorityQueue 简介PriorityQueue,即优先级队列。优先级队列可以保证每次取出来的元素都是队列中的最小或最大的元素<Java优先级队列默认每次取出来的为最小元素>.原创 2022-03-09 17:12:56 · 1852 阅读 · 15 评论 -
数据结构——【堆】详解
一. 堆🌲1. 堆的概念堆(heap):一种有特殊用途的数据结构——用来在一组变化频繁(发生增删查改的频率较高)的数据集中查找最值。堆在物理层面上,表现为一组连续的数组区间:long[] array ;将整个数组看作是堆。堆在逻辑结构上,一般被视为是一颗完全二叉树。满足任意结点的值都大于其子树中结点的值,叫做大堆,或者大根堆,或者最大堆;反之,则是小堆,或者小根堆,或者最小堆。当一个堆为大堆时,它的每一棵子树都是大堆。2. 堆的存储方式从堆的概念可知,堆是一棵完全二叉树,原创 2022-03-08 16:03:00 · 7280 阅读 · 18 评论 -
数据结构——顺序表,链表
一. 数据结构概述数据结构(Data Structure)是一门研究数据的组织和管理的学科。往往从外在表现为一组数据的集合或者容器。概念解释:元素(Element):被管理的原子数据,元素类型不限。集合(Collection):存放元素的容器,需要利用一定的数据结构知识对元素进行组织。遍历(Traversal)/ 迭代(Iterate):在数据结构的语境下,往往表示对一个集合中的所有元素都按 照一定的顺序处理一次。数据逻辑结构:指反映数据元素之间的逻辑关系的数据结构,其中的逻辑结构是原创 2022-03-06 17:30:41 · 429 阅读 · 1 评论 -
数据结构——树,二叉树详解
一. 树1.1 树的定义树是n个结点的有限集合,有且仅有一个根结点,其余结点可分为m个根结点的子树。1.2 树的概念树(tree)是包含 n(n≥0)个结点,当 n=0 时,称为空树,非空树中条边的有穷集,在非空树中:(1)每个元素称为结点(node)。(2)有一个特定的结点被称为根结点或树根(root)。结点的度: 一个结点拥有子树的个数称为度。比如A的度为3,B的度为2,C的度为0。度为0的结点称为叶子结点(C,E,G,H,I)。树的度是树中所有结点的度的最大值,此树..原创 2022-03-05 13:58:48 · 2231 阅读 · 7 评论