剑指offer 删除链表的结点

题解一:双指针

 ListNode* deleteNode(ListNode* head, int val) {
        // write code here
        ListNode* Head=new ListNode(0);
        Head->next=head;
        ListNode*pre=Head;
        ListNode*cur=head;
        

        while(cur!=nullptr)
        {
            if(cur->val==val)
            {
                pre->next=cur->next;
                break;
            }
            pre=cur;
            cur=cur->next;
        }

        return Head->next;
    }
};

你可能感兴趣的:(剑指offer题解,链表,数据结构)