1, 题目
删除链表中等于给定值 val 的所有节点。
示例:
输入: 1->2->6->3->4->5->6, val = 6
输出: 1->2->3->4->5
2, 算法
object Solution {def removeElements(head: ListNode, `val`: Int): ListNode = {val x = `val`val result = new ListNode()result.next = headvar current = resultwhile (current.next != null) {if (current.next.x == x) {val tmp = current.nextcurrent.next = current.next.nexttmp.next = null} else {current = current.next}}val l = result.nextresult.next = nulll}}
class Solution:def removeElements(self, head: ListNode, val: int) -> ListNode:result = ListNode()result.next = headcurrent = resultwhile current.next:if current.next.val == val:tmp = current.nextcurrent.next = current.next.nexttmp.next = Noneelse:current = current.nexthead = result.nextresult.next = Nonereturn head
