237-delete node in single list

来源:互联网 发布:vb取整函数 编辑:程序博客网 时间:2024/05/16 12:25

难度:easy
类别:linked list

1.题目描述

给定要删除的结点,要求将该结点删除

2.实现分析

因为是单向链表,并且没有给定head指针,所以要想办法处理next指针。将问题转换为将node->next给node并且删除node->next即可。

3.代码

class Solution {public:    void deleteNode(ListNode* node) {        //  因为没有指向前面结点的指针,所以可以转换为删掉下一个结点来处理next指针        if (node->next == NULL) delete node;        ListNode* temp = node->next;        node->next = temp->next;        node->val = temp->val;        delete temp;    }};