在链表的index(0-based)位置添加新的元素e
public void add(int index, E e){
if(index < 0 || index > size)
throw new IllegalArgumentException("Add failed. Illegal index.");
head = add(head, index, e);
size ++;
}
// 在以node为头结点的链表的index位置插入元素e,递归算法
public Node add(Node node,int index,E e){
if(index == 0){
**// 初始化head为空,添加第一个元素node.next会触发空指针异常。**
return new Node(e,node.next);
}
node.next = add(node,index - 1, e);
return node;
}