无序列表(unordered list) :其元素间不具备内在顺序,元素按其在列表中的位置进行排序。
html
索引列表(indexed list) : 其元素能够用数字索引来引用。前端
java集合API提供的列表类主要是支持索引列表,在必定程度上,这些类与无序列表是重叠的,在javaAPI中并无任何类能直接实现有序列表。java
java.util.List接口中的一些方法:git
方法 | 描述 |
---|---|
add(E element) | 向列表末端添加一个元素 |
add(int index, E element) | 在指定索引处插入一个元素 |
get(int index) | 返回指定索引处的元素 |
remove(int index) | 删除指定索引处的元素 |
remove(E Object) | 删除指定对象的第一个出现 |
set(int index , E element) | 替代指定索引处的元素 |
size() | 返回列表中的元素数量 |
操做 | 描述 |
---|---|
removeFirst | 从列表中删除第一个元素 |
removeLast | 从列表中删除最后一个元素 |
remove | 从列表中删除某个元素 |
first | 查看位于列表前端的元素 |
last | 查看位于列表末端的元素 |
contains | 肯定列表是否含有某一个元素 |
size | 肯定列表中的元素数量 |
操做 | 描述 |
---|---|
add | 往列表中添加一个元素 |
操做 | 描述 |
---|---|
addToFront | 把元素添加到列表的前端 |
addToRear | 把元素添加到列表的末端 |
addToAfter | 把元素添加到列表中某个已有元素的后面 |
环形数组(circular array),数组的最后一个索引后面跟的是第一个索引;能够去除在列表的数组实现中元素移位的须要数组
remove操做的复杂度:O(n);数据结构
返回目录学习
数组、链表、栈和队列是最基本的数据结构,任何程序语言都会涉及到其中的一种或多种;.net
返回目录设计
返回目录3d
错题1:
解决: 多态引用使用的是对象的类型来决定调用版本的方法。
错题2:
解决:top变量指的是数组中的下一个可用位置和数组中项目的数量。
错题3:
解决:pop操做是经过返回对当前存储在顶部的元素的引用来实现的。
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | |
---|---|---|---|
目标 | 3000行 | 15篇 | 300小时 |
第一周 | 0/0 | 1/1 | 12/12 |
第二周 | 935/935 | 1/2 | 24/36 |
第三周 | 849/1784 | 1/3 | 34/70 |
第三周 | 3600/5384 | 1/5 | 50/120 |
数据结构(Java实现)之单向链表的节点表示、插入、删除、单向链表反转和串联
【数据结构】链表的原理及java实现
java集合包总结(添加、删除等操做实现原理)