LeetCode 237 ——删除链表中的结点

1. 题目

237

2. 解答

  • 因为给定的只有一个待删除的结点指针,我们并不知道其前面结点,所以需要将待删除结点后面的结点值复制到前面结点去,然后指向其后的第二个结点即可。
/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     ListNode *next;
 *     ListNode(int x) : val(x), next(NULL) {}
 * };
 */
class Solution {
public:
    void deleteNode(ListNode* node) {
        
        // 将待删除结点后面的结点值复制到前面结点去,然后指向其后的第二个结点
       
        node->val = node->next->val;
        node->next = node->next->next;
    }
};

获取更多精彩,请关注「seniusen」!
seniusen

posted @ 2018-10-22 19:33  seniusen  阅读(151)  评论(0编辑  收藏  举报