ALGORITHM VISUAL DEBUGGER
アルゴリズム可視化ラボ
実行をイベント列として記録し、任意のステップへ進む・戻ることができるビジュアルデバッガです。
同じ (i, w) の呼び出し結果をメモに保存し、再訪時は計算せず即座に返します。青いノードがメモヒットです。 重複の多い配列(例:1 が並ぶ)ほど効果が分かりやすくなります。
step 0 / 18
実行中のコード行
const memo = new Map<string, boolean>();function func(i: number, w: number, a: number[]): boolean {const key = `${i},${w}`;if (memo.has(key))return memo.get(key)!; // メモヒット!let res: boolean;if (i === 0) res = (w === 0);else if (func(i - 1, w, a)) res = true;else if (func(i - 1, w - a[i-1], a)) res = true;else res = false;memo.set(key, res); // 結果を保存return res;}
メモテーブル(0 件)
まだ空です
コールスタック(深さ 0)
未開始