文档章节

集合框架之链表集合算法

凯哥学堂
 凯哥学堂
发布于 2017/07/27 12:33
字数 796
阅读 3
收藏 0


夏目有尔

# 链表集合算法:
1.链=引用
2.链表集合与数组集合的区别:在增值方面,数组集合的速度比链表集合算法【学Java,到凯哥学堂kaige123.com】的速度要快;但是链表集合在增删值和修改值方面要更灵活,它的原理就好比链条。
3.链表的分类:
3.1单链集合(了解即可):上家能找到下家,但是下家找不到上家,即通过上一个数组可以找到下一个数组,但是没办法通过下一个数组找到上一个数组。如下图:

![image](http://os78f4hny.bkt.clouddn.com/201707270001.jpg?imageMogr2/blur/1x0/quality/75|watermark/1/image/aHR0cDovL29zNzhmNGhueS5ia3QuY2xvdWRkbi5jb20vd2F0ZXJtYXJrLnBuZw==/dissolve/50/gravity/SouthEast/dx/10/dy/10|imageslim)

3.2双链集合:上家能找到下家,下家也能找到上家。如下图:

![image](http://os78f4hny.bkt.clouddn.com/201707270002.jpg?imageMogr2/blur/1x0/quality/75|watermark/1/image/aHR0cDovL29zNzhmNGhueS5ia3QuY2xvdWRkbi5jb20vd2F0ZXJtYXJrLnBuZw==/dissolve/50/gravity/SouthEast/dx/10/dy/10|imageslim)

4.代码实现(以双链为例):
4.1添加值

![image](http://os78f4hny.bkt.clouddn.com/201707270003.jpg?imageMogr2/blur/1x0/quality/75|watermark/1/image/aHR0cDovL29zNzhmNGhueS5ia3QuY2xvdWRkbi5jb20vd2F0ZXJtYXJrLnBuZw==/dissolve/50/gravity/SouthEast/dx/10/dy/10|imageslim)

![image](http://os78f4hny.bkt.clouddn.com/201707270004.jpg?imageMogr2/blur/1x0/quality/75|watermark/1/image/aHR0cDovL29zNzhmNGhueS5ia3QuY2xvdWRkbi5jb20vd2F0ZXJtYXJrLnBuZw==/dissolve/50/gravity/SouthEast/dx/10/dy/10|imageslim)

![image](http://os78f4hny.bkt.clouddn.com/201707270005.jpg?imageMogr2/blur/1x0/quality/75|watermark/1/image/aHR0cDovL29zNzhmNGhueS5ia3QuY2xvdWRkbi5jb20vd2F0ZXJtYXJrLnBuZw==/dissolve/50/gravity/SouthEast/dx/10/dy/10|imageslim)

![image](http://os78f4hny.bkt.clouddn.com/201707270006.jpg?imageMogr2/blur/1x0/quality/75|watermark/1/image/aHR0cDovL29zNzhmNGhueS5ia3QuY2xvdWRkbi5jb20vd2F0ZXJtYXJrLnBuZw==/dissolve/50/gravity/SouthEast/dx/10/dy/10|imageslim)

4.2在头部添加值

![image](http://os78f4hny.bkt.clouddn.com/201707270007.jpg?imageMogr2/blur/1x0/quality/75|watermark/1/image/aHR0cDovL29zNzhmNGhueS5ia3QuY2xvdWRkbi5jb20vd2F0ZXJtYXJrLnBuZw==/dissolve/50/gravity/SouthEast/dx/10/dy/10|imageslim)

4.3在尾部增加值

![image](http://os78f4hny.bkt.clouddn.com/201707270008.jpg?imageMogr2/blur/1x0/quality/75|watermark/1/image/aHR0cDovL29zNzhmNGhueS5ia3QuY2xvdWRkbi5jb20vd2F0ZXJtYXJrLnBuZw==/dissolve/50/gravity/SouthEast/dx/10/dy/10|imageslim)

4.4删除第一个值

![image](http://os78f4hny.bkt.clouddn.com/201707270009.jpg?imageMogr2/blur/1x0/quality/75|watermark/1/image/aHR0cDovL29zNzhmNGhueS5ia3QuY2xvdWRkbi5jb20vd2F0ZXJtYXJrLnBuZw==/dissolve/50/gravity/SouthEast/dx/10/dy/10|imageslim)

4.5删除最后一个值

![image](http://os78f4hny.bkt.clouddn.com/201707270010.jpg?imageMogr2/blur/1x0/quality/75|watermark/1/image/aHR0cDovL29zNzhmNGhueS5ia3QuY2xvdWRkbi5jb20vd2F0ZXJtYXJrLnBuZw==/dissolve/50/gravity/SouthEast/dx/10/dy/10|imageslim)

4.6在指定的位置添加值

![image](http://os78f4hny.bkt.clouddn.com/201707270011.jpg?imageMogr2/blur/1x0/quality/75|watermark/1/image/aHR0cDovL29zNzhmNGhueS5ia3QuY2xvdWRkbi5jb20vd2F0ZXJtYXJrLnBuZw==/dissolve/50/gravity/SouthEast/dx/10/dy/10|imageslim)
![image](http://os78f4hny.bkt.clouddn.com/201707270012.jpg?imageMogr2/blur/1x0/quality/75|watermark/1/image/aHR0cDovL29zNzhmNGhueS5ia3QuY2xvdWRkbi5jb20vd2F0ZXJtYXJrLnBuZw==/dissolve/50/gravity/SouthEast/dx/10/dy/10|imageslim)

4.7按下标删除值

![image](http://os78f4hny.bkt.clouddn.com/201707270013.jpg?imageMogr2/blur/1x0/quality/75|watermark/1/image/aHR0cDovL29zNzhmNGhueS5ia3QuY2xvdWRkbi5jb20vd2F0ZXJtYXJrLnBuZw==/dissolve/50/gravity/SouthEast/dx/10/dy/10|imageslim)
![image](http://os78f4hny.bkt.clouddn.com/201707270014.jpg?imageMogr2/blur/1x0/quality/75|watermark/1/image/aHR0cDovL29zNzhmNGhueS5ia3QuY2xvdWRkbi5jb20vd2F0ZXJtYXJrLnBuZw==/dissolve/50/gravity/SouthEast/dx/10/dy/10|imageslim)


4.8对删除操作的改进版本:在执行删除操作时,可以返回被删除的值

![image](http://os78f4hny.bkt.clouddn.com/201707270015.jpg?imageMogr2/blur/1x0/quality/75|watermark/1/image/aHR0cDovL29zNzhmNGhueS5ia3QuY2xvdWRkbi5jb20vd2F0ZXJtYXJrLnBuZw==/dissolve/50/gravity/SouthEast/dx/10/dy/10|imageslim)

![image](http://os78f4hny.bkt.clouddn.com/201707270016.jpg?imageMogr2/blur/1x0/quality/75|watermark/1/image/aHR0cDovL29zNzhmNGhueS5ia3QuY2xvdWRkbi5jb20vd2F0ZXJtYXJrLnBuZw==/dissolve/50/gravity/SouthEast/dx/10/dy/10|imageslim)

![image](http://os78f4hny.bkt.clouddn.com/201707270017.jpg?imageMogr2/blur/1x0/quality/75|watermark/1/image/aHR0cDovL29zNzhmNGhueS5ia3QuY2xvdWRkbi5jb20vd2F0ZXJtYXJrLnBuZw==/dissolve/50/gravity/SouthEast/dx/10/dy/10|imageslim)

![image](http://os78f4hny.bkt.clouddn.com/201707270018.jpg?imageMogr2/blur/1x0/quality/75|watermark/1/image/aHR0cDovL29zNzhmNGhueS5ia3QuY2xvdWRkbi5jb20vd2F0ZXJtYXJrLnBuZw==/dissolve/50/gravity/SouthEast/dx/10/dy/10|imageslim)

5.用途:链表集合多用于队列模式,任务排队一系列的操作中。以队列模式为例:排队的好处【学Java,到凯哥学堂kaige123.com】就是先来的先取出执行,如下图,可以前面取值,后面进值,当然也可以后出前进

![image](http://os78f4hny.bkt.clouddn.com/201707270019.jpg?imageMogr2/blur/1x0/quality/75|watermark/1/image/aHR0cDovL29zNzhmNGhueS5ia3QuY2xvdWRkbi5jb20vd2F0ZXJtYXJrLnBuZw==/dissolve/50/gravity/SouthEast/dx/10/dy/10|imageslim)


 

© 著作权归作者所有

上一篇: 局域网文件传输
下一篇: -Java基础-方法
凯哥学堂
粉丝 18
博文 316
码字总数 284948
作品 0
东城
程序员
私信 提问
Java核心技术卷1: 集合

集合接口 接口的设计思想之一: 将集合的接口与实现分离. 例如队列的接口如下: 而实现存在两种方式: 1. 使用循环数组实现: 2. 使用链表实现: 由于接口与实现分离, 我们可以根据不同的情况, 既...

fzyz_sb
2016/07/10
47
0
数据结构探险之图篇(上)理论篇

数据结构探险之图篇 什么是图? 如下图:无向图 & 有向图 箭头分方向。 无向图中每条认为有来有回两条线 图中的概念: 结点称为顶点。 之间的线称为弧。 弧尾和弧头(箭头)。 从顶点发出去和...

天涯明月笙
2017/09/11
0
0
java 集合框架--基本概念

java 集合框架: 1. 什么是框架:类库的集合 2. 集合框架:用来表示和操作的统一的框架,包含了实现集合的接口与类 3. 集合:存放数据的容器。集合框架包含了两部分:一部分是接口,一部分是...

viewsonic001
2016/08/18
16
0
算法导论——用于不相交集合的数据结构

不相交集合的操作 一些应用涉及将n个不同元素分成一组不相交的集合,常进行两种操作:寻找包含制定元素的唯一集合以及合并两个集合。操作进行以下定于: MAKE-SET(x)建立一个新的集合,仅含有...

灰色的风
2018/08/04
0
0
集合类以及集合框架

集合是一组复合元素的容器,用来存储,检索,控制聚合数据并提供它们之间的通信方法。 java的集合框架提供了表示和操控集合的统一架构。所有的集合框架都包含下面三个方面: 接口:即集合的抽...

ccj_ok
2017/09/14
0
0

没有更多内容

加载失败,请刷新页面

加载更多

64.监控平台介绍 安装zabbix 忘记admin密码

19.1 Linux监控平台介绍 19.2 zabbix监控介绍 19.3/19.4/19.6 安装zabbix 19.5 忘记Admin密码如何做 19.1 Linux监控平台介绍: 常见开源监控软件 ~1.cacti、nagios、zabbix、smokeping、ope...

oschina130111
今天
10
0
当餐饮遇上大数据,嗯真香!

之前去开了一场会,主题是「餐饮领袖新零售峰会」。认真听完了餐饮前辈和新秀们的分享,觉得获益匪浅,把脑子里的核心纪要整理了一下,今天和大家做一个简单的分享,欢迎感兴趣的小伙伴一起交...

数澜科技
今天
7
0
DNS-over-HTTPS 的下一代是 DNS ON BLOCKCHAIN

本文作者:PETER LAI ,是 Diode 的区块链工程师。在进入软件开发领域之前,他主要是在做工商管理相关工作。Peter Lai 也是一位活跃的开源贡献者。目前,他正在与 Diode 团队一起开发基于区块...

红薯
今天
6
0
CC攻击带来的危害我们该如何防御?

随着网络的发展带给我们很多的便利,但是同时也带给我们一些网站安全问题,网络攻击就是常见的网站安全问题。其中作为站长最常见的就是CC攻击,CC攻击是网络攻击方式的一种,是一种比较常见的...

云漫网络Ruan
今天
11
0
实验分析性专业硕士提纲撰写要点

为什么您需要研究论文的提纲? 首先当您进行研究时,您需要聚集许多信息和想法,研究论文提纲可以较好地组织你的想法, 了解您研究资料的流畅度和程度。确保你写作时不会错过任何重要资料以此...

论文辅导员
今天
8
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部