鍊錶排序
在 o(n log n) 時間複雜度和常數級的空間複雜度下給鍊錶排序。
您在真實的面試中是否遇到過這個題?
yes
樣例給出1->3->2->null
,給它排序變成1->2->3->null
.
挑戰
標籤
相關題目
/**
* definition for listnode.
* public class listnode
* }*/
public class solution
listnode mid = findmiddennode(head);
listnode right = mid.next;
mid.next = null;
listnode sortleft = sortlist(head);
listnode sortright = sortlist(right);
return mergesort(sortleft, sortright);
}public static listnode findmiddennode(listnode head)
return slow;
}public listnode mergesort(listnode left, listnode right) else
}if (left != null)
if (right != null)
return head.next;
}}
lintcode 鍊錶排序
在 o n log n 時間複雜度和常數級的空間複雜度下給鍊錶排序。您在真實的面試中是否遇到過這個題?yes 樣例給出1 3 2 null,給它排序變成1 2 3 null.definition for listnode.public class listnode 思路 歸併排序 根據要求採用先so...
LintCode 鍊錶插入排序
1.描述 用插入排序對鍊錶排序 樣例 given1 3 2 0 null,return0 1 2 3 null 2.分析 插入排序是十分常見的排序方式之一,類似於陣列的插入排序,此題是關於鍊錶的插入排序。原題給定乙個以head為頭節點的鍊錶,下面再新建乙個有序的dummy鍊錶,通過把head鍊錶 中...
LintCode 鍊錶插入排序
用插入排序對鍊錶排序 樣例 given 1 3 2 0 null,return 0 1 2 3 null 解題思路 用temp移動,指向head指向的下乙個結點。用while迴圈判斷指標指向的下乙個位址不為空,如果新建的鍊錶指向的結點的值小於原鍊錶指向的結點的值,就向下移動,head指向的結點斷鏈,...