看板 C_Sharp 關於我們 聯絡資訊
想問list或是array的Sort()裡的演算法是哪一種? 因為看msdn只說是default也沒有原始碼 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.96.185.163 ※ 文章網址: https://www.ptt.cc/bbs/C_Sharp/M.1455702995.A.E85.html
ssccg: 你msdn沒仔細看,上面是寫用default的Comparer 02/17 18:03
ssccg: 備註有寫用的演算法,基本上是quicksort 02/17 18:09
fo40225: http://tinyurl.com/zb27qun 02/17 19:49
Litfal: 應該是introsort----改良版的quicksort 02/17 19:58
CiC: http://goo.gl/v7ecsy 原始碼不是公開了嗎XD 02/17 23:06
JackBaska: 我想很難不用quick,其他算法要是你sort多一點就GG了 02/20 11:03
remmurds: QuickSort是整個 .NET framework 中最常用的排序演算法 02/21 20:37
remmurds: 不只List和Array LINQ的OrderBy也是用它 02/21 20:38
remmurds: 畢竟它又快又穩 02/21 20:40
Litfal: 不對喔,Sort本身不是穩定(stable)的,但OrderBy是。 02/21 21:56
Litfal: 如果你的穩不是這個穩的話,那當我沒說 02/21 21:57
JackBaska: 他應該不是說worst case複雜度的穩,而是平均表現得穩 02/22 09:00
JackBaska: 畢竟你很難真的遇到很random排的data 02/22 09:01
Litfal: 抱歉我說的也不是這種穩定 02/22 17:31
Litfal: https://goo.gl/lbn4Lt 02/22 17:32