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