思路:删除指定节点,由于找不到指定节点的前一个节点,因此把指定节点下一个节点的内容复制到指定节点然后删除掉。本质上没有删除指定节点而是删除了指定节点的下一个节点。注意C++不会自动回收内存,因此要delete掉del指针
class Solution
{
public:
void deleteNode(ListNode* node)
{
ListNode* del=node->next;
node->val=del->val;
node->next=node->next->next;
delete del;
}
};