欲張りアルゴリズムの概要
欲張りアルゴリズムは、特定の問題に対して最適なソリューションを実現するように設計されています。欲張りアルゴリズムのアプローチでは、決定は特定のソリューションドメインから行われます。貪欲であるため、最適なソリューションを提供すると思われる最も近いソリューションが選択されます。
欲張りアルゴリズムは、ローカライズされた最適なソリューションを見つけようとします。これにより、最終的にはグローバルに最適化されたソリューションにつながる可能性があります。ただし、一般的に欲張りアルゴリズムはグローバルに最適化されたソリューションを提供しません。
このセクションでは、-
について説明します。- アクティビティ選択の問題
- 隣接リスト表現のためのダイクストラのアルゴリズム
- ダイクストラの最短経路アルゴリズム
- ハフマン符号化アルゴリズム
- ソートされた入力のための効率的なハフマン符号化
- 期限付きのジョブシーケンス問題
- クラスカルの最小スパニングツリーアルゴリズム
- 最小コイン交換問題
- プラットフォームの最小数の問題
- プリムの最小スパニングツリーアルゴリズム
- 隣接リスト表現のためのプリムのMST
- フラクショナルナップサック問題
-
バックトラッキングの概要
バックトラック 問題を解決するためのアルゴリズムに基づく手法です。再帰呼び出しを使用して、時間の経過とともに値を段階的に増やしながらソリューションを構築することにより、ソリューションを見つけます。問題を解決するために与えられた制約に基づいて、問題の解決をもたらさない解決策を削除します。 バックトラッキングアルゴリズムは、特定の種類の問題に適用されます。 問題の実行可能な解決策を見つけるために使用される決定問題。 適用できる最良の解決策を見つけるために使用される最適化問題。 問題のすべての実行可能な解決策のセットを見つけるために使用される列挙問題。 バックトラッキング問
-
データ構造における最適な偏った木
不等文字コストに最適なプレフィックスフリーコードを見つける問題は、エンコーディングアルファベットが長さαとβの不等コスト(長さ)文字で構成され、α≤βである最小コストのプレフィックスフリーコードを計算することです。二分木に限定します。 ハフマンツリーがハフマンコーディング問題の解を表すのと同じように、コードは偏ったツリーで表されます。類似性にもかかわらず、文字のコストが等しくない場合は、古典的なハフマンの問題よりもはるかに困難です。問題に関する豊富な文献があるにもかかわらず、一般的な文字のコストについては、多項式時間アルゴリズムは知られていないか、利用できません。 ただし、利用可能な既知の