面试中经常问到双向链表的反转问题,下面参考《数据结构与算法分析》给出个LinkedList
实现,同时讨论双向链表的反转实现。
public class LinkedList<E> {
private Node<E> head;
private Node<E> foot;
private int modCount;
private int size;
public LinkedList() {
clear();
}
private void clear() {
head = new Node<E>(null, null, null);
foot = new Node<E>(null, head, null);
head.next = foot;
modCount++;
size = 0;
}
public int size() {
return size;
}
public