4

haskell.orgから:

quicksort :: Ord a => [a] -> [a]
quicksort []     = []
quicksort (p:xs) = (quicksort lesser) ++ [p] ++ (quicksort greater)
    where
        lesser  = filter (< p) xs
        greater = filter (>= p) xs

私の質問は、ここで「p」が表す単語は何ですか? 言い換えれば、なぜ(p:xs)ではなく(x:xs)

4

1 に答える 1

10

私はちょうど答えを見つけました:

(p:xs)head 要素を持つ空でないリストを表す左側のパターンp(ピボット要素として使用)

「p」は「ピボット」の略です。

于 2013-04-17T19:11:02.927 に答える