List集合有三个常用的实现类 1.ArrayList: 底层部分使用数组实现,遍历熟读块。中间插入删除元素速度慢,线程不安全。 2. Vector: 底层部分同样使用数组实现,线程不安全 3.LinkedList :采用双向链表实现。元素的空间不连续。每个元素除了存放数据以外,还要存放上一个和下一 ...
分类:
编程语言 时间:
2018-04-22 14:47:53
阅读次数:
161
有个小需求要求实现一个双向链表的反转于是就有了下边代码: 链表元素结构定义: 链表定义: 备注:这里主要实现了三个功能,在链表头部添加元素、toArray函数、反转函数,实际上链表应该包含其他功能:末尾添加元素,插入元素,索引,移除,遍历等。 测试代码: ...
分类:
编程语言 时间:
2018-04-21 19:49:40
阅读次数:
365
LinkedList LinkedList底层是基于双向链表实现的 内置插入删除方法 linkFirst & linkLast unlinkFirst & unlinkLast linkBefore unlink 源码分析 小结 1. ArrayList底层为数组,查找操作复杂度为O(1),添加删除 ...
分类:
其他好文 时间:
2018-04-21 16:10:32
阅读次数:
211
1.概念的引入 首先我们先来了解什么是缓存,以及数据在内存中的存储方式. 1.缓存是什么 2.数据在内存中的存储方式 第1种.线性 第2种.链接 节点的属性: 多个节点的内部构造: 代码思路 一.添加节点add(Object obj) 添加节点过程图 二.删除节点数据remove(Object ob ...
分类:
其他好文 时间:
2018-04-17 16:58:26
阅读次数:
176
模板类list是一个容器,所控制的长度N的序列是一个有着N个节点的双向链表。每个节点存储一个单独的元素,一个前驱指针,一个后继指针。list的节点存储在非连续的存储空间中,由于其结构的原因,list的插入、删除、替换等操作速度很快,但元素的查找和随机存取等操作就很慢,需要从头节点一个节点一个节点的往 ...
分类:
编程语言 时间:
2018-04-16 23:59:47
阅读次数:
360
LinkedList简介 & 12288;& 12288;继承于AbstractSequentialList的双向链表,可以被当做堆栈、队列或双端队列进行操作。 & 12288;& 12288;LinkedList本质上是一个双向链表,实现了Dequeue接口。 & 12288;& 12288;Li ...
分类:
编程语言 时间:
2018-04-16 16:24:14
阅读次数:
175
不积跬步无以至千里,这里会不断收集和更新Java基础相关的面试题,目前已收集100题。 1.什么是B/S架构?什么是C/S架构 B/S(Browser/Server),浏览器/服务器程序 C/S(Client/Server),客户端/服务端,桌面应用程序 2.你所知道网络协议有那些? HTTP:超文 ...
分类:
编程语言 时间:
2018-04-16 14:35:20
阅读次数:
190
1. 双向链表的定义 每个节点有两个链接:一个指向前一个节点,当此节点为第一个节点时,指向空值;而另一个指向下一个节点,当此节点为最后一个节点时,指向空值。 2. 操作 is_empty() 链表是否为空 length() 链表长度 travel() 遍历链表 add(item) 链表头部添加 ap ...
分类:
编程语言 时间:
2018-04-15 18:03:17
阅读次数:
209
[POI2007]办公楼biu Description FGD开办了一家电话公司。他雇用了N个职员,给了每个职员一部手机。每个职员的手机里都存储有一些同事的电话号码。由于FGD的公司规模不断扩大,旧的办公楼已经显得十分狭窄,FGD决定将公司迁至一些新的办公楼。FGD希望职员被安置在尽量多的办公楼当中 ...
分类:
其他好文 时间:
2018-04-14 20:36:06
阅读次数:
178