貪欲法!動的計画法を使うまでもないわ...

15.1 活動選択問題(区間スケジューリング問題) 1つの会議室がある。会議室では同時に違うミーティングを行うことはできない。この会議室の利用を申請する $n$ 個のミーティングがある。ミーティング時間が被らないという前提のもとで、なるべく多くのミーティングを実施したい。 ...

Posted · 2025-11-17 · Updated · 2025-11-19 · 1 分 · 238 文字 · eknta

最長共通部分列LCSと最適二分探索木を動的計画法で解く!

14.4 最長共通部分列 なぜ最長共通部分列(LCS)問題を学ぶのか この節では「最長共通部分列(Longest Common Subsequence: LCS)問題」に取り組む。詳しい定式化は後でやるが、この問題は「似ているけれど同じではない」二つの列(文字列や配列)の共通性を調べるための問題といえる。 ...

Posted · 2025-11-17 · Updated · 2025-11-19 · 23 分 · 11461 文字 · eknta

動的計画法!メモ化再帰?ボトムアップ?これで丸わかり!

この資料は、アルゴリズム設計・分析の重要なテクニックの一つである動的計画法 (Dynamic Programming, DP) について学ぶことを目的としています。具体的な問題を例に取りながら、その動作原理と適用可能な問題の性質を理解していきます。 ...

Posted · 2025-11-17 · Updated · 2025-11-19 · 14 分 · 6531 文字 · eknta

分割統治法!マスター法とAkra-Bazzi法

漸化式を解くためのマスター法 アルゴリズムの実行時間解析、特に分割統治法に基づくアルゴリズムでは、その計算量を表す漸化式を解くことが求められる。マスター法は、特定の形式の漸化式に対して、その解を体系的に導出するための手法である。 ...

Posted · 2025-11-17 · Updated · 2025-11-19 · 30 分 · 14949 文字 · eknta

多腕バンディットを知りたい人のための世界標準の入門記事

“Bandit Algorithms” Tor Lattimore & Csaba Szepesvari の 輪読会の資料です。世界標準のバンディットの教科書なので、 世界標準レベルの入門記事と言えます。(過言) 第1章:イントロダクション バンディット問題の源流は、William R. Thompson(1933)の論文です。Thompson は 臨床試験 に関心があり、その応用を想定してバンディット問題を考えました。 ...

Posted · 2025-11-17 · Updated · 2025-11-19 · 18 分 · 8683 文字 · eknta

3つの漸近記法 (ΘOΩ) の違いまとめ

『アルゴリズムイントロダクション第4版』の第3章で大事なとこだけまとめました。(ΘOΩ) ←顔みたいでかわいいね。 アルゴリズムの実行時間と漸近記法 アルゴリズムの効率性を評価し、入力サイズが増加した際のスケーラビリティを把握するために、実行時間の増加のオーダー(漸近的効率)を分析する。これには、係数や低次の項を無視し、入力サイズ $n$ が十分に大きい場合における実行時間の振る舞いに焦点を当てる 漸近記法 が用いられる。 ...

Posted · 2025-07-15 · Updated · 2025-11-19 · 3 分 · 1308 文字 · eknta

良いアルゴリズムってなんだ?

『アルゴリズムイントロダクション』§2.2-§2.3です。 第2章:さあ、始めよう Part2 アルゴリズムの解析 解析するとはなにか? 同じ問題を解く複数のアルゴリズムがあるとき、どれを採用するのかを考えよう。このとき重要なのは、アルゴリズムを解析して優劣を決めて選択することだ。解析するとはなにか? ...

Posted · 2025-04-30 · Updated · 2025-11-19 · 31 分 · 15043 文字 · eknta

アルゴリズムをなぜ学ぶのか?

以下は私が作成した『アルゴリズムイントロダクション 第4版』の輪読資料です。一部、練習問題や章末問題を解いた結果も載せています。 対応する教科書セクションは、第1部序論、§1.1~2.1です。 ...

Posted · 2025-04-14 · Updated · 2025-11-19 · 8 分 · 3591 文字 · eknta