Java数据结构
文章平均质量分 95
求索1024
这个作者很懒,什么都没留下…
展开
-
Java数据结构之Map与Set
Map是一个独立的接口类,该类没有继承Collection和Iterable接口,因此我们在前面数据结构常用的方法不一定有,也无法使用迭代器和for-each语句,但是提供了toString()方法,因此如何实现自主遍历是我们后面要介绍的重点之一该类中存储的是结构的键值对,并且K一定是唯一的,不能重复。原创 2022-11-29 18:10:18 · 735 阅读 · 0 评论 -
二叉搜索树
在之后我们需要介绍两个非常重要的结构,分别是Set和Map,而在介绍之前,我们需要先介绍一下二叉搜索树,为之后的学习做一个铺垫。原创 2022-11-21 09:48:06 · 265 阅读 · 0 评论 -
八大排序算法实现与总结(七大比较排序)
由于我们内存是有限的,如果排序的数据量比较小,那么我们完全可以在内存中完成。但是,如果需要排序的数据需要的空间比内存大,那么我们就需要使用外部排序。2.我们知道,快排的结果就是构成一棵二叉树,而二叉树越往下走,分支节点越多,需要递归的次数也越多,但此时数据量并不大。:由于希尔排序最优解的问题暂时没解决,因此在这里只是说明除二增量法的时间复杂度大致为O(N ^ 1.3 ~ 1.5),比较范围内中头,中,尾三个数的大小,然后将中间值放到数组的开头(在数组有序或几乎有序的情况下极其有效)空间复杂度:O(范围)原创 2022-11-19 23:12:40 · 357 阅读 · 0 评论 -
Java数据结构之优先级队列(堆)
Java集合框架中提供了和两种类型的优先级队列,PriorityQueue是线程不安全的,PriorityBlockingQueue是线程安全的,本文主要介绍PriorityQueue使用时必须导入Priority所在的包,即:PriorityQueue中放置的元素必须能够比较大小,不能插入无法比较大小的对象,否则会抛出ClassCastException异常不能插入null对象,否则会抛出ClassCastException异常没有容量限制,可以插入任意多个元素,其内部可以自动扩容。原创 2022-11-05 11:00:00 · 1369 阅读 · 0 评论 -
Java数据结构之二叉树
二叉树的创建很简单,但是难就难在操作上,我们为了简便,先自己手动创建一个简陋的二叉树的结构,着重介绍二叉树的操作,先创建一棵二叉树。我们有前面的概念可以看出,二叉树定义是递归式的,因此后序基本操作中基本都是按照递归实现的。完全二叉树:完全二叉树是效率很高的数据结构,完全二叉树是从满二叉树中引出来的,对于。的数据结构,它是由n(n >= 0)个有限节点组成的一个具有层次关系的集合,遍历是二叉树上最重要的操作之一,是二叉树进行其他运算的基础。称之为完全二叉树,由此可知,满二叉树是一种特殊的完全二叉树。原创 2022-10-25 21:32:39 · 2188 阅读 · 4 评论 -
Java数据结构之栈和队列
我们可以从集合那一节的图中看出,Stack继承了Vector,Vector和ArrayList类似,都是动态的顺序表,不同的是Vector是线程安全的。我们可以采用头插法来入栈,每次出栈时删除的也是头节点,时间复杂度也是O(1),但仍没有顺序栈方便,毕竟顺序栈不用修改指向。:只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有。,队不为空时,rear都是front之后,随着入队出队的操作,最终。:栈的插入操作,叫做进栈/压栈/入栈,入数据在栈顶。原创 2022-10-24 10:00:00 · 1011 阅读 · 0 评论 -
Java数据结构之LinkedList与链表
链表是一种物理存储结构上非连续存储结构,数据元素的逻辑顺序是通过链表中的引用链表次序实现的注意链式结构在逻辑上是连续的,但是在物理上不一定连续现实中的节点一般都是从堆上申请出来的从堆上申请的空间,是按照一定的策略分配的,两次申请的空间可能连续,也可能不连续单向或者双向带头结点或者不带头节点循环或者非循环我们主要学习无头单向非循环链表和无头双向链表LinkedList。原创 2022-10-21 21:58:00 · 199 阅读 · 0 评论 -
Java数据结构之顺序表与ArrayList
例如:线性表是数据结构的第一部分,也是用的比较多的一部分知识,话不多说,开始卷ArrayList集合框架【说明】ArrayList 实现了 RandomAccess 接口,表明 ArrayList 支持随机访问ArrayList 实现了 Cloneable 接口,表明 ArrayList 是可以 clone 的ArrayList 实现了 Serializable 接口,表明 ArrayList 是支持序列化的。原创 2022-10-02 21:07:15 · 280 阅读 · 0 评论 -
Java数据结构之集合,复杂度,与泛型
或许大家看过这句话,数据结构 + 算法 == 程序。同语法一样,数据结构同样是优秀程序员必备的基础,写代码时选择了适合地数据结构,可以帮助我们对数据进行更好地处理。因此这门课程对于我们来说是十分重要的,话不多说,干就完了!Java 集合框架 Java Collection Framework,又被称为容器container,是定义在 java.util 包下的一组接口 interfaces 和其实现类 classes。原创 2022-09-28 15:48:07 · 326 阅读 · 0 评论