题单
203.移除链表元素
链表节点对象
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;
}
}
203.移除链表元素
力扣题目链接(opens new window)
题意:删除链表中等于给定值 val 的所有节点。
示例 1:
输入:head = [1,2,6,3,4,5,6], val = 6
输出:[1,2,3,4,5]
示例 2:
输入:head = [], val = 1
输出:[]
示例 3:
输入:head = [7,7,7,7], val = 7
输出:[]
递归方法(我的思路)
public ListNode removeElements(ListNode head, int val) {
// 如果当前节点为null,直接返回
if (head == null) {
return head;
}
// 遍历更新子节点
head.next = removeElements(head.next, val);
// 如果当前元素为该元素,则返回子节点;否则,返回
if (head.val == val) {
return head.next;
}else{
return head;
}
}
标签:head,ListNode,val,代码,随想录,next,链表,节点
From: https://www.cnblogs.com/qiuye98/p/programmercarl-list.html