20162304 实验一 线性结构 实验报告
实验一 线性结构-1
实验一 线性结构-2
实验代码
public static List mergeSortedList(List<? extends Comparable> aList,
List<Comparable> bList) {
ArrayList cList = new ArrayList();
int i = 0;
int j = 0;
while (i < aList.size()) {
if (aList.get(i).compareTo(bList.get(j)) < 0) {
bList.add((aList.get(i)));
i++;
}
if (i < aList.size())
for (int a = i; a < aList.size() - 1; a++)
cList.add(aList.get(a));
if (j < aList.size())
for (int a = j; a < aList.size() - 1; a++)
cList.add(bList.get(a));
}
return bList;
}
实验一 线性结构-3
实验一 线性结构-4
代码关键方法
- isEmpty()
- toString()
- add(int i, T x)
- remove(int index)
实验一 线性结构-5
public boolean add(E e) {
ensureCapacity(size + 1);
elementData[size++] = e;
return true;
此方法将指定的元素添加到此列表的尾部。
public class LinkedList<E>
extends AbstractSequentialList<E>
implements List<E>, Deque<E>, Cloneable, java.io.Serializable
- LinkedList 是一个继承于AbstractSequentialList的双向链表。它也可以被当作堆栈、队列或双端队列进行操作。
- LinkedList 实现 List 接口,能对它进行队列操作。
- LinkedList 实现 Deque 接口,即能将LinkedList当作双端队列使用。
- LinkedList 实现了Cloneable接口,即覆盖了函数clone(),能克隆。
- LinkedList 实现java.io.Serializable接口,这意味着LinkedList支持序列化,能通过序列化去传输。
其他
第一次做源码分析有点看不懂,借助网上的一些分析的思路方法,感觉还是有所收获的。