首页 » 编程之美 » 正文

[leetcode_237]Delete Node in a Linked List

删除单链表中,指定的节点。
最开始读题的时候,觉得至少应该给头节点和目标节点,但是猜测之后发现,题目可能是要求,将目标节点后的节点的val覆盖前面的节点的val,而不是单链表中真正意义的删除。

class Solution {
public:
    void deleteNode(ListNode* node) {
        ListNode * next = node->next;
        ListNode * before = NULL;
        while(next != NULL)
        {
            node->val = next->val;
            before = node;
            node = next;
            next = next->next;
        }
        before->next = NULL;
    }
};

发表评论