2014-10-13から1日間の記事一覧

はじめてのHaskell(8)

クイックソート import List main = print $ qsort [3,4,1,8,2,6,5] qsort :: [Int] -> [Int] qsort [] = [] qsort (p:xs) = qsort lt ++ [p] ++ qsort gteq where lt = [x | x <- xs, x < p] gteq = [x | x <- xs, x >= p] 関数 関数 概要 ++ (++)::[a] -> …

たらい回し関数

たらい回し関数 竹内関数。ベンチマークに使われる。 それ以外に特に用途は無いらしい。 tarai(x, y, z){ if (x <= y) return y; else tarai(tarai( x-1, y, z), tarai(y-1, z, x), tarai(z-1, x, y)); }

はじめてのHaskell(7)

練習問題 countbyte.hs main = do cs <- getContents print $ countByte cs countByte cs = length cs countwords.hs main = do cs <- getContents print $ countWords cs countWords cs = length $ words cs swap.hs main = do cs <- getContents putStr $ …