链表
(卡神小迷弟!!!)----最近攻克了二叉树,回头转战链表~~啦啦啦!!!
1.定义:
是一种通过指针串联在一起的线性结构 ,
每一个节点由两部分 组成,一个是数据域 一个是指针域 (存放指向下一个节点的指针),最后一个节点的指针域指向null(空指针的意思)。
public class ListNode{
int val;
ListNode next;
public ListNode(){};
public ListNode(int val){
this.val=val;
}
public ListNode(int val,ListNode next){
this.val=val;
this.next=next;
}
}
2.链表的类型
单链表: 只有一个尾指针
双链表: 有头指针和尾指针
循环链表: 链表首尾相连
单链表的结构:
双链表的结构:
循环链表的结构:
3.链表的存储方式
特点:逻辑地址 连续,物理地址 离散无序(没有要求,想怎么样就怎么样);通过下图的指针(小箭头)
4.链表的定义
单链表的定义:
public class ListNode{
int val;
ListNode next;
public ListNode(){};
public ListNode(int val){
this.val=val;
}
public ListNode(int val,ListNode next){
this.val=val;
this.next=next;
}
}
5.链表的操作:CRUD YYDS!!
删除节点:
添加节点:
完结
|