JavaSE——链表集合

声明:本栏目所使用的素材都是凯哥学堂VIP学员所写,学员有权匿名,对文章有最终解释权;凯哥学堂旨在促进VIP学员互相学习的基础上公开笔记。

链表集合:

优点:
1.有序
2.可以向前面和向后添加
3.中间插入也很方便
4.可以使用它实现简单队列模式

缺点:
1.消耗内存有点大
2.定位删除和定位查找都是比较满的

如下图:指定对象删除方法,按指定对象移除,就是找到你要找的那个对象然后移除,如下图这遍代码就是帮你找,如果没有找着,那就帮你找下家,如果还不对,又循环又帮你找下家,直到找到null为止

上面已经做好查找要删除的节点,如下面代码是开始删除的

指定对象删除的原理:如下图,你只要把引用丢掉就相当于是删除了

如下图:是按下标移除,写个循环,从0开始循环,找到你要删除的下标为止,找到之后就开始删除

如下图:是选择一个下标位置加入一个进去

插入数据的原理图

原文地址:https://www.cnblogs.com/kaigexuetang/p/8878572.html

时间: 2024-11-02 09:52:59

JavaSE——链表集合的相关文章

集合框架之链表集合算法

链表集合算法: 1.链=引用 2.链表集合与数组集合的区别:在增值方面,数组集合的速度比链表集合算法[学Java,到凯哥学堂kaige123.com]的速度要快:但是链表集合在增删值和修改值方面要更灵活,它的原理就好比链条. 3.链表的分类: 3.1单链集合(了解即可):上家能找到下家,但是下家找不到上家,即通过上一个数组可以找到下一个数组,但是没办法通过下一个数组找到上一个数组.如下图: 3.2双链集合:上家能找到下家,下家也能找到上家.如下图: 4.代码实现(以双链为例): 4.1添加值 4

数组集合和链表集合

声明:本栏目所使用的素材都是凯哥学堂VIP学员所写,学员有权匿名,对文章有最终解释权:凯哥学堂旨在促进VIP学员互相学习的基础上公开笔记. 数组集合: 优点: 1.有序 2.可以进行下标操作 3.添加速度快 缺点: 1.删除,删除第一个,删除最后一个,选择一个位置删除这些都不方便操作 2.插入数据也不方便 例题:比如你想插入88的数据到3的后面,那你后面得到4567就要往后挪位置,所以这种方式就非常麻烦,所以使用链表集合的话就方便一些 链表集合: 介绍:就好比是自行车的车链,它的好处就是你可以随

JavaSE笔记-集合

Java集合大致可分为:List,Set,Map,Queue List:有序,可重复 Set:无序(输出和插入顺序不一定一致),不可重复 Map:映射关系,根据key去访问value Queue:队列,先进先出(FIFO) 集合类只能存储对象 List<int> //错误 List<Integer> Collection体系结构 圆圈表示:interface 长方形表示:class 带三角的实线代表继承关系,使用关键字extends 带三角的虚线代表实现关系,使用关键字implem

javase(Properties集合及学生对象信息录入文本中案例)

1.Properties集合 Properties和IO流的结合使用 1 public void load(Reader reader) 2 public void store(Writer writer,String comments) 3 /* 4 * 这里的集合必须是Properties集合: 5 * public void load(Reader reader):把文件中的数据读取到集合中 6 * public void store(Writer writer,String commen

C# 基于泛型的自定义线性节点链表集合示例

本例子实现了如何自定义线性节点集合,具体代码如下: using System; using System.Collections; using System.Collections.Generic; namespace LineNodeDemo { class Program { static void Main(string[] args) { LineNodeCollection lineNodes = new LineNodeCollection(); lineNodes.Add(new

JavaSE Collection集合

集合:是java中提供的一种容器,可以用来存储多个对象.可是我们前面学习的数组也是可以保存多个对象的,为什么还要提供集合容器呢?集合和数组它们有啥区别呢? 数组的长度是固定的.一旦创建完成不能改变长度.并且只能保存同一类型的数据. 集合的长度是可变的.会随着保存的元素个数的增加而扩容.并且可以保存不同类型的数据. 集合按照其存储结构可以分为两大类,分别是: 单列集合java.util.Collection 双列集合java.util.Map Collection:是单列集合类的顶层父接口,它有两

【JavaSE】集合(1)

Java集合 1. 集合的由来 通常情况下,程序直到运行时,才知道需要创建多少个对象.但在开发阶段,我们根本不知道到底需要多少个数量的对象,甚至不知道它的准确类型.为了满足这些常规的编程需要,我们要求能在任何时候,任何地点创建任意数量的对象,而这些对象用什么来容纳呢?我们首先想到了数组,但是数组只能放统一类型的数据,而且其长度是固定的,那该怎么办呢?集合便应运而生了!Java集合框架为程序员提供了预先包装的数据结构和算法来操纵他们. 2. 集合的概念 Java集合类,存放于 java.util

JavaSE set集合学习总结

Set集合 无序,没有下标,集合中的元素不重复. HashSet 打印结果去重 且无序. 例子 public static void main(String[] args) { HashSet<Person> hs = new HashSet<Person>(); //定义了一个Person类 hs.add(new Person("张三",23)); hs.add(new Person("张三",23)); hs.add(new Person

双链集合添加删除算法

双链集合添加删除算法: package com.linkes; public class MyLinkeList { /** * 更多资料欢迎浏览凯哥学堂官网:http://kaige123.com * @author 小沫 */ /** * 链表集合他是于双链条式进行引用上下家,好处可以知道上家和下家是谁 * 利于修改,可以从首部开始删除数据也可以从尾部删除. * 即可从中间指定位置删除. */ private Object[] shou; private Object[] wei; // 默