顺序表:处在连续的内存空间
链表:处在不连续的内存空间上
链表优点:解决顺序表的搬运,增加或者删除操作
O(N)
链表
一、 链表创建
结点点中保存元素的值和下一个结点的位置。最后一个节点的next为空
1.1链表创建的代码
创建Node类
public class Node {
//使用Node表示链表的结点
public int val; //保存我们的元素
public Node next=null;//保存下一个结点的引用,其尾结点 next==null;
public Node(int val) {
this.val = val;
}
@Override
public String toString() {
return "["+this.val+"]";
}
}
创建Main类
public class Main {
public static Node creteList1(){
Node a =new Node(1);
Node b=new Node(2);
Node c =new Node(3);
Node d =new Node(4);
a.next=b;
b.next=c;
c.next=d;
d.next=null;
return a;
}
public static void main(String[] args) {
Node head =creteList1();
System.out.println(head.val);
}
1.2 链表的头结点(head)
通常情况下,使用头结点代替整个链表。只要知道头节点,就可以获取到链表的所有元素
1.3链表创建的图示
(下面这些存在在栈中&#