乐趣区

关于golang:Leetcode专题链表203移除链表元素

力扣链接:
https://leetcode-cn.com/probl…
解题思路:

  1. 本题要求删除链表中值为 val 的节点,咱们在解决链表问题的时候,因为头节点比拟非凡,与其余节点的解决形式不同,为了放弃所有节点的解决形式雷同,咱们应用一个虚构节点作为头节点,指向链表的真正头节点,最初返回的时候返回虚构节点的下一个节点即可
type ListNode struct {
    val int
    next *ListNode
}
func removeElements(head *ListNode, val int) *ListNode {  // 判断以后和以后的下一位是否为空
    dummyHead := &ListNode{}
    dummyHead.Next = head
    cur := dummyHead
    for cur != nil && cur.Next != nil {
         if cur.Next.Val == val {cur.Next = cur.Next.Next}
        cur = cur.Next
    }
    return dummyHead.Next
}
退出移动版