チーター本の間違い探し・感想とか

@hogeover30が「最強最速アルゴリズマー養成講座」を読んで感じたことなど
1
hogeover30 @hogeover30

チーター本 p.105 「『最善の選択』が問題文に記述されていれば単純なシミュレーション」って書いてあるけど「最善の選択」の部分をどう処理すればいいのかわからないから全然単純に見えない。 「決着が付くまでの最短手数を求めよ」という問題の方がイメージしやすい。

2012-10-09 10:03:23
hogeover30 @hogeover30

チーター本 p.106 最後の文 最も近くの探索の終わっていないノードはDじゃなくてIなのでは

2012-10-09 10:06:34
hogeover30 @hogeover30

チーター本 p.107 「スタック」・「キュー」・「再帰関数」が未定義のまま出てきてるからこれらを知ってるのが前提で書かれてると思ってたらp.116からスタックとかの説明が出てきて「ええ?!」ってなってる

2012-10-09 10:13:07
hogeover30 @hogeover30

チーター本 様々なタイプの全探索のところ DFS・BFS等の紹介→DFSのイメージ→BFSのイメージ→データ構造→DFSの実装→BFSの実装→DFSの問題→BFSの問題 ってDFSとBFSが行ったり来たりで凄くわかりにくい。DFSだけで全部まとめてからBFSにして欲しい。

2012-10-09 10:28:16
hogeover30 @hogeover30

数学の本とかでよくある「定理→証明 定理→証明」が延々と続いて 「だからなんなのー?」 っていう状態になる。既に知ってる内容だから読めるけど知らないコトでこれをやられたらココで力尽きる可能性が高い

2012-10-09 10:31:45
hogeover30 @hogeover30

チーター本 p.113 「本書ではこれより先の手順は示しませんが」って初心者向けを謳う本でこれをやられると窓から投げ捨てたくなる って思ったけど図のノードにたどる順番が書いてあるからいいか

2012-10-09 11:04:03
hogeover30 @hogeover30

メモリを意識するとかレベル高すぎ

2012-10-09 11:08:22
hogeover30 @hogeover30

チーター本 p.120 Fig.5-44 fib(2)の上に書いてある数字は3じゃなくて2が正解だよね

2012-10-09 11:39:29
hogeover30 @hogeover30

あと根の右の子はfib(4)じゃなくてfib(2)だな

2012-10-09 11:41:31
hogeover30 @hogeover30

チーター本 p.120 「if(nextが訪問済みであるかどうかの判定)」 だと「判定結果がどうだったらtrueなの?」ってなるから if(nextはまだ訪問してない) とかの方がいいと思う

2012-10-09 11:47:00
hogeover30 @hogeover30

チーター本 p.127からのソースが何の説明もなしに理解できる人って相当センスがある人だと思う。 「縦横をnの2倍以上の配列を用意して初期位置を真ん中にしとけばいい」とか「こんな配列を2つ用意すればforループで簡単に東西南北の移動があらわせる」とかの説明も欲しいところ

2012-10-09 14:36:38
hogeover30 @hogeover30

チーター本 p.136 計算量・オーダーに触れてるけどそこらへんの説明ってまだ出てきてないよね。「この程度なら問題ない」って問題あるなしの基準がこの時点ではまだ説明されてなかった気がする。あとO(125000)っていう表現はアリなんだろうか

2012-10-09 15:07:36
hogeover30 @hogeover30

チーター本 p.138-139 C++のコード std::stringの長さの取得にsize()を使ってるけどp.103ではlength()を使ってるのがなんか気持ち悪い。(続く)

2012-10-09 15:13:08
hogeover30 @hogeover30

(続き)あとmaze[nextY].substr(nextX,1)ってmaze[nextY][nextX]でいいじゃない。間違いじゃないから別にいいんだけど

2012-10-09 15:14:08
hogeover30 @hogeover30

チーター本 p.174 7-1のC++とJavaの1行目にconst/finalがついてないのが気持ち悪い7-2, 7-3ではついてるのに

2012-10-10 13:38:31
hogeover30 @hogeover30

逆に7-1のC#のコードにconstがついてなければ気持ち悪くないか。 7-2, 7-3は配列の要素数に使ってるからconstが無きゃダメなのね

2012-10-10 13:41:40
hogeover30 @hogeover30

チーター本 p.178 「bit演算を用いた探索」ってなんだろう・・・

2012-10-10 13:45:12
hogeover30 @hogeover30

チーター本 p.180 「説明するまでもなく、簡単にメモ化できる(ry」 ・・・説明して。探索方法1のダメな点が理解できてればわかることんだけど説明して。

2012-10-10 13:59:20
hogeover30 @hogeover30

チーター本 p.181 7-6 C++のコード11行目 「Math.Max」 じゃなくて 「max」(またはstd::max)

2012-10-10 14:01:23
hogeover30 @hogeover30

チーター本 凄くどうでもいいことなんだけど、ナップサック問題のところで「商品」って言ったり「品物」って言ったりしてるのを統一して欲しい

2012-10-10 14:33:33
hogeover30 @hogeover30

チーター本 IT Mediaの連載の時にも思ったんだけどp.182-183の図 横が合計の重さ、縦が何番目の商品まで見たかを表すって説明がないから一瞬見方がわからなかった。あとFig.7-11だけ0番目の図がない

2012-10-10 14:40:07
hogeover30 @hogeover30

チーター本 p.183 Fig.7-13 |0|2| |2|4|5| |5|7| | | の最初の5(左から6番目)から矢印が出てない

2012-10-10 14:46:05
hogeover30 @hogeover30

チーター本 p.203 C++のコードで new と delete を使っているのは「動的計画法だけに動的に確保しました。動的計画法だけに」という事でいいのでしょうか (心の底からどうでもいい)

2012-10-10 19:17:35
hogeover30 @hogeover30

チーター本 p.205 「TopCoder Collegiate Challenge Round 4」 じゃなくて「TCCC'03 Round 4」って書いてくれないとArenaで探せない。Problem Archiveで探すハメになった

2012-10-10 19:43:01
hogeover30 @hogeover30

ChessMetric 元の問題文が間違ってるじゃねーかコラ。3つ目の引数のことを「end」っていったり「finish」っていったりしてる

2012-10-10 19:57:40