变量简洁正确完整思路

画图,链表题画图,原始变量中间变量修改指针修改原始变量,一般开头和结尾容易错,修改指针容易错,原始变量越少越好这道题是ok,中间变量多一点i、pre、cur、nex,结尾的修改指针也很重要

 

 

 

 

class Solution {
public:
    ListNode* insertionSortList(ListNode* head) {
        ListNode*dummy=new ListNode(-1,head);
        ListNode*ok=head;
        while(ok->next){
            ListNode*cur=ok->next,*nex=ok->next->next,*i=dummy;
            while(i->next->val<cur->val){
                i=i->next;
            }
            ListNode*pre=i->next;
            if(i==ok)ok=ok->next;
            else{
                i->next=cur;
                ok->next=nex;
                cur->next=pre;
            }
            //if(cur->val==0)cout<<i->val<<ok->val;
        }
        return dummy->next;
    }
};

 

posted on 2021-08-04 19:37  offer快到碗里来~  阅读(30)  评论(0)    收藏  举报