class Solution {
public:
ListNode* sortList(ListNode* head) {
stack<ListNode*>s;
ListNode* p=head;
while(p){
s.push(p);
p=p->next;
}
head=NULL;
ListNode* past_p=NULL;
while(!s.empty()){
ListNode* t=s.top();
s.pop();
p=head;
past_p=NULL;
while(p){
if(p->val>t->val)
break;
past_p=p;
p=p->next;
}
t->next=p;
if(past_p==NULL)
head=t;
else past_p->next=t;
}
return head;
}
};
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交