【激突】関数型言語 VS オブジェクト指向言語2at TECH【激突】関数型言語 VS オブジェクト指向言語2 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト656:デフォルトの名無しさん 12/05/02 11:34:39.78 こっちは要素の重複を取り除かないバージョン import Data.List perm' [] = [[]] perm' xs = [x:y | x <- xs, y <- perm $ delete x xs] 657:uy 12/05/02 13:23:15.71 >>655 Rubyのpermutationって誰も知らないのか話題にならないから俺が最初に2chにコード投下したやつじゃん(半年前くらいに) 67の冗長ゴミカスRubyソースコードを添削しただけだよ 658:デフォルトの名無しさん 12/05/02 13:33:49.06 へえー、これ良いね。 659:デフォルトの名無しさん 12/05/02 15:29:43.37 >>658 いやHaskellでもRubyでも標準添付や組み込みのライブラリに入ってますし… 660:デフォルトの名無しさん 12/05/03 10:07:46.90 >>655 要素の重複を取り除くところでバグるかもしれない点は面白い 661:デフォルトの名無しさん 12/05/03 14:24:19.11 >>655 を Squeak Smalltalk で書いてみた。バグもそのまま。 perm := [:xs | xs ifEmpty: [#(())] ifNotEmpty: [ xs gather: [:x | (perm value: (xs copyWithout: x)) collect: [:ys | {x}, ys]]]]. perm value: #(1 2 3) "=> #((1 2 3) (1 3 2) (2 1 3) (2 3 1) (3 1 2) (3 2 1)) " 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch