链表相关知识点
链表汇总
知识点
java中链表节点定义
1 | public class ListNode{ |
链表删除
cur :为当前某个链表的节点
cur.value:取出当前节点值域存放的具体值 类比到:xxx.value
cur.next:
- 当前链表的指针域,用来存放下一个节点的地址
- 也可以代表cur的下一个节点,因为按照地址取值
cur.next.next:cur下一个节点的下一个节点的地址
1 | cur.next = cur.next.next; |
题目
T203 移除链表元素
1 | class Solution { |
- 为什么链表题目都只是传入一个头节点head/返回一个头节点?
- 核心是指针域。因为链表节点这种数据结构,通过一个每个节点的指针域就可以得到下一个节点,以此类推,知道最后一个节点的指针域为null。
- 为什么需要判断cur != null ?
- 避免cur为null时,调用cur.value导致空指针异常,即null取属性/null调用方法
- 为什么一般都是重新定义一个ListNode cur = head?
- 因为一般head是固定的,需要用一个头节点去代表返回处理后的链表
- 用一个cur节点去代替head遍历,从而进行链表的操作/改变链表元素
- 15900000024 whjf@2023
T
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 烟寒乂品!