トップ «前の日記(2009/07/22) 最新 次の日記(2009/07/24)» 編集

SikabaneWorksが関係するコンテンツ(主に*band系ローグライク)の開発近況・補足から全く個人的な雑記まで。

[WEB:屍の見える丘公園]| [RSS]

Angband | Badiashimshe | C# | CRAUZEL | D'angband/小説草稿 | D'angband/開発 | DarkSouls | Demon'sSouls | DungeonCrawl | ElvenUteruses | Haskell | Hengband | J9シリーズ | LEGO | LineDrawing | MISC | MTG | Mac | Math | Moria | R-18 | Roguelike | Rough | RoughSketch | Ruby | SDL | UNIX | VMware | WarHammer | Zangband | アタシラヂョウヲウ | イラスト | ガジェット | ゲーム | ゲーム紹介 | ゲーム製作技術 | ゲーム論 | スケッチ | ツクール | テクノロジー | ニコニコ動画 | ファルコム | ファンタジー | マリオ | ヴィーヤウトゥムノ | 別記事追加予定 | 変愚蛮怒 | 変愚蛮怒/スポイラー | 変愚蛮怒/元ネタ探訪 | 変愚蛮怒/攻略 | 変愚蛮怒/開発 | 宗教 | 情報 | 政治 | 文字コード | 日ペ昔話 | 東方 | 東方ワンドロ | 東方外法漢女 | 歴史 | 漫画製作 | 版権絵 | 画像処理 | 翻訳 | 自然言語 | 艦隊これくしょん | 落書き | 言語解析 | 読書 | 超人ロック | 追記予定 | 通信 | 鉄獄旅慕情 | 阿片窟 | 馬鹿馬鹿蛮怒/開発 | 魔法少女まどか☆マギカ | 魚類版深夜の真剣お絵描き60分一本勝負


2009/07/23

[Haskell]適当にHaskellをいじる

クイックソートとマージソート

qsort :: [Int] -> [Int]
qsort [] = []
qsort (x:xs) = qsort [l | l <- xs, l < x] ++ [x] ++ qsort [l | l <- xs, l >= x]
--
merge :: [Int] -> [Int] -> [Int]
merge [] [] = []
merge x [] = x
merge [] y = y
merge (x:xs) (y:ys) = if x >= y then x: merge xs (y:ys)
                                else y: merge (x:xs) ys
--
msort :: [Int] -> [Int]
msort [] = []
msort [x] = [x]
msort l = msort' $ splitAt (div (length l) 2) l
                  where msort' ([a],[b]) = merge [a]       [b]
                        msort' ( a ,[b]) = merge (msort a) [b]
                        msort' ( a , b ) = merge (msort a) (msort b)
--
main = do putStrLn $ show $ qsort [13, 3, 5, 1, 5, 19, 67, 4, 19]
          putStrLn $ show $ qsort [15, 18 ,3, -4, 10, 67, 19 ,11]