Maestumプログラミング、囲碁、読書の話題この広告は、90日以上更新していないブログに表示しています。2018-04-13`foldr`を使って`dropWhile`を定義するHaskellHaskellの高階関数のfoldrでdropWhileを定義せよ、という問題を見たのでやってみる。xs)「わかってるねんで?foldrがreduce、foldlがfold。2017年4月5日とにかくややこしい。3でどっちにベースの要素eがつくかでleft/rightを判断するのがよさそう。xの結果のみで決定できるからだ。xだけでなく、「以前の要素がpを満たしていたか」も判断基準になってくるから。foldrとreverseでdropWhileということで、一番簡単な解決法はreverseを使ってリストを逆転させてしまうこと。xsの結果を判断材料にできる。そもそもO(n)の処理を三回やっているし、さらに重要なのは遅延評価の強みを消してしまっていること。dropWhileの第一要素を計算するためにリストすべてをいったん調べなければいけない。listや無限リストなどは扱えなくなってしまう。左側にpを満たさない要素があった場合の結果リストをタプルで持っている。[1..])[7,8,1,2,3]のように無限リストにも対応出来る。overflowを起こしてうまくいかない。foldrに似たfoldl関数を定義したい。)はてなブログをはじめよう!zehnpaardさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。