0
点赞
收藏
分享

微信扫一扫

【Leetcode】203. 移除链表元素

芝婵 2024-01-09 阅读 9

203. 移除链表元素

题目

【Leetcode】203. 移除链表元素
给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点

代码

/**
 * Definition for singly-linked list.
 * type ListNode struct {
 *     Val int
 *     Next *ListNode
 * }
 */
func removeElements(head *ListNode, val int) *ListNode {
    // 初始化一个链表指针
    dummy := &ListNode{}
    p := dummy
    // 枚举链表
    for ; head != nil; head = head.Next {
        // 如果当前节点的值不等于目标值,则让尾指针指向当前节点,并移动尾指针
        if head.Val != val {
            p.Next = head
            p = head
        }
    }
    // 让尾指针指向nil
    p.Next = nil
    return dummy.Next
}
举报

相关推荐

0 条评论