
变量简洁正确完整思路
画图,链表题画图,原始变量中间变量修改指针修改原始变量,一般开头和结尾容易错,修改指针容易错,原始变量越少越好这道题是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; } };
浙公网安备 33010602011771号