
数据结构
文章平均质量分 91
Java数据结构
、枉然
这个作者很懒,什么都没留下…
展开
-
第六章 LinkedList与链表
LinkedList 的官方文档LinkedList的底层是双向链表结构,由于链表没有将元素存储在连续的空间中,元素存储在单独的节点中,然后通过引用将节点连接起来了,因此在在任意位置插入或者删除元素时,不需要搬移元素,效率比较高。LinkedList实现了List接口;LinkedList的底层使用了双向链表;LinkedList没有实现RandomAccess接口,因此LinkedList不支持随机访问;LinkedList的任意位置插入和删除元素时效率比较高,时间复杂度为O(1);原创 2023-05-26 11:53:55 · 828 阅读 · 0 评论 -
第五章 ArrayList与顺序表
在集合框架中,ArrayList是一个普通的类,实现了List接口,具体框架图如下:说明ArrayList是以泛型方式实现的,使用时必须要先实例化;ArrayList实现了RandomAccess接口,表明ArrayList支持随机访问;ArrayList实现了Cloneable接口,表明ArrayList是可以clone的;ArrayList实现了Serializable接口,表明ArrayList是支持序列化的;和Vector不同,ArrayList不是线程安全的。原创 2023-05-26 11:52:23 · 1109 阅读 · 0 评论 -
第四章 List接口
在集合框架中,List是一个接口,继承自Collection。Collection也是一个接口,该接口中规范了后序容器中常用的一些方法,具体如下所示:Iterable也是一个接口,表示实现该接口的类是可以逐个元素进行遍历的,具体如下:站在数据结构的角度来看,List就是一个线性表,即n个具有相同类型元素的有限序列,在该序列上可以执行增删改查以及变量等操作。List中提供了好的方法,具体如下:**方法 **解释尾插 e将 e 插入到 index 位置尾插 c 中的元素。原创 2023-05-13 21:27:35 · 845 阅读 · 0 评论 -
第三章 包装类&泛型
JAVA 推出泛型以前,程序员可以构建一个元素类型为Object的集合,该集合能够存储任意的数据类型对象,而在使用该集合的过程中,需要程序员明确知道存储每个元素的数据类型,否则很容易引发异常。方法限定符 < 类型形参列表 > 返回值类型 方法名称(形参列表) {. . . }原创 2023-05-13 21:26:45 · 533 阅读 · 0 评论 -
第二章 时间和空间复杂度
一个算法执行所耗费的时间,从理论上说,是不能算出来的,只有你把你的程序放在机器上跑起来,才能知道。实例4基本操作执行最好N次,最坏执行了(N*(N-1))/2次,通过推导大O阶方法+时间复杂度一般看最坏,时间。时间复杂度主要衡量的是一个算法的运行速度,而空间复杂度主要衡量一个算法所需要的额外空间。实例1基本操作执行了2N+10次,通过推导大O阶方法知道,时间复杂度为 O(N)。实例2基本操作执行了M+N次,有两个未知数M和N,时间复杂度为 O(N+M)实例6执行了N次,每次执行1此,时间复杂度为O(N)。原创 2023-05-13 21:25:11 · 588 阅读 · 0 评论 -
第一章 集合框架
官方教程Java 集合框架,又被称为容器container,是定义在java.util包下的一组接口 interfaces和其实现类 classes。其主要表现为将多个元素 element 置于一个单元中,用于对这些元素进行快速、便捷的存储 store 、检索 retrieve 、管理 manipulate ,即平时我们俗称的增删查改CRUD。例如,一副扑克牌(一组牌的集合)、一个邮箱(一组邮件的集合)、一个通讯录(一组姓名和电话的映射关系)等等。原创 2023-05-13 21:22:46 · 655 阅读 · 0 评论