原题:
Sort a linked list using insertion sort.
解题方法:
创建一个辅助节点dummy, 对每一个节点,从前往后找到一个合适的插入位置将节点插入。
代码:
Sort a linked list using insertion sort.
解题方法:
创建一个辅助节点dummy, 对每一个节点,从前往后找到一个合适的插入位置将节点插入。
代码:
ListNode* insertionSortList(ListNode* head) {
ListNode dummy(INT_MIN);
while(head){
ListNode* prev = &dummy, *next = head->next;
while(prev->next && prev->next->val < head->val){
prev = prev->next;
}
head->next = prev->next;
prev->next = head;
head = next;
}
return dummy.next;
}