Re: [請益] 快速排序的問題

作者: dryman (dryman)   2012-04-17 15:12:19
yauhh大寫的方法還蠻清楚的
提供一個有用accumulator來減少++的版本:
qsort [] acc = acc
qsort [x] acc = x:acc
作者: Favonia (00010110110001101010100)   2012-04-17 21:20:00
忘了 [] 的 case... 然後用 partition 省 ++ 不一定有好處看似 tail recursion 但 acc 還是有一堆 ++ 等著算 xDDDDD我覺得你不能用其他程式語言的執行順序來理解 Haskell...前者 stack 大小的期望值和後者 acc 大小的期望值只差常數GHC 的預設實作中不會用到的部份根本不會算,這是重點。
作者: dryman (dryman)   2012-04-18 08:48:00
哈,我其實比較熟的FP語言是scrict而不是lazy

Links booklink

Contact Us: admin [ a t ] ucptt.com