线性表是一种最简单的容器。直观上是一个包含多个元素的序列。
元素之间的顺序是很重要的。如一个包含10个整数的线性表:
a=<1,2,3,4,5,6,7,8,9,10>。
存储方式当然也就是通常的2种:数组和链表。
数组要维护一下空间,即如果空间不够了要扩大容量。优点是存取速度快,a[0]立马就返回a[0],a[10]立马返回a[10]。但是插入和修改就要移动元素了,而且是一个一个的移动。比如在6后面插入个100,那么7到10就要一次向后移动(顺序当然是10开始,然后9..)。
链表就不用移动元素了。随便的修改一下引用就OK了,棒棒的啦。但是它不能“叫到谁谁就出来”,因为没有下标供我们使用。只能是“从头开始”。
列表的定义:相信能够猜到每个方法的含义了吧
public interface List<T> {
public void add(T obj);
public void delete(inti);
public void update(inti, T dest);
public void search(inti);
public int size();
public boolean isEmpty();
public Iterator<T> iterator();
public StringtoString();
}