レス書き込み
スレへ戻る
写
レス栞
レス消
関数型プログラミング言語Haskell Part33
PC,スマホ,PHSは
ULA
べっかんこ
公式(スマホ)
公式(PC)
で書き込んでください。
名前
メール
引用切替:
レスアンカーのみ
>>9 > universe-base パッケージに Data.Universe.Helpers.diagonals という関数があって、 > > diagonals [[1,2,3,4], [5,6,7,8], [9,10,11,12]] = [[1], [5,2], [9,6,3], [10,7,4], [11,8], [12]] > > という、つまり行列を対角線状に走査して並べ直す計算をしてくれる。 > で、これの関数定義がかなりシンプルなんだ。 > > diagonals :: [[a]] -> [[a]] > diagonals = tail . go [] where > go b es_ = [h | h:_ <- b] : case es_ of > [] -> transpose ts > e:es -> go (e:ts) es > where ts = [t | _:t <- b] > > 簡単な行列で関数を展開してみると何をやっているのかよく分かる。 > > これ考えたヤツ天才じゃね? > 今の俺は他人のソースを展開して理解するので精一杯だけど、 > いつかこんな関数定義ができるよう精進したい。
ローカルルール
SETTING.TXT
他の携帯ブラウザのレス書き込みフォームはこちら。
書き込み設定
で書き込みサイトの設定ができます。
・
ULA
・
べっかんこ(身代わりの術)
・
べっかんこ(通常)
・
公式(スマホ)
・
公式(PC)[PC,スマホ,PHS可]
書き込み設定(板別)
で板別の名前とメールを設定できます。
メモ帳
(0/65535文字)
上
下
板
覧
索
設
栞
歴
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.009s