ビデオ: マイクロフォンアレイに基づく音響信号処理 小野 順貴 2024
ダミーチートシートのアルゴリズムの一部
次の表は、さまざまな種類のデータ分析に役立つアルゴリズムとアルゴリズムの種類を示しています。
アルゴリズム | 解説 | 有用なリンク |
A *検索 | アルゴリズムは、ノードを探索する際にノードのコストを追跡します。 (n)999 = 999 + 999(n)999(式中、 (999)h(n)は、ノードに到達するための推定コストである。ノードからの目標 f(n) は、nからゴールまでの経路の推定コストです。最も有望な経路を最初に検索し、高価な経路を避けることです。 スタンフォード。 edu Balanced Tree 再編成によってバランスの取れた構造を維持し、アクセス時間を短縮できるツリーの一種。左側の要素の数は、右側の要素の数と最大で1つ異なります。
Webdoc
双方向検索 この技術は、2つの検索経路が真ん中で出会うまで、ルートノードとゴールノードから同時に検索する。このアプローチの利点は、多くの他のブルートフォース・ソリューションよりも迅速にソリューションを見つけるため、時間効率が良いことです。さらに、他のアプローチよりも効率的にメモリを使用し、常に解決策を見つけることができます。主な欠点は、実装の複雑さです。 計画。 cs バイナリツリー これは、ゼロ(リーフノード)、1つまたは2つ(分岐ノード)の他のノードに接続するノードを含むタイプのツリーです。各ノードは、データストレージ、左接続、右接続の3つの要素を定義します。 cs。 cmu。幅広い検索 この技術は、ルートノードから始まり、まず各子ノードを探索し、次に、次のレベルに移動する。それは解決策が見つかるまでレベル別に進んでいきます。このアルゴリズムの欠点は、すべてのノードをメモリに格納する必要があることです。つまり、多数のノードに相当な量のメモリを使用します。この手法では重複したノードがあるかどうかを確認できるため、時間が節約され、常に解決策が生まれます。 Khan Academcy |
ブルートフォース |
これは、誰かが可能な限りすべての解決策を試し、最良の問題解決策を探す問題解決の技法です。ブルートフォース技法は、存在するときに最適解を保証するが、実装に時間がかかるため、ほとんどの人がそれらを回避する。 | Igm。深さ優先探索(Depth-First Search)この技法は、ルートノードから始まり、リーフノードに達するまで、接続された子ノードのセットを探索する。解決策が見つかるまで、分岐ごとに分岐を進めます。このアルゴリズムの欠点は、ノードが重複していないかどうかを確認できないことです。つまり、同じノードのパスを複数回通過する可能性があります。実際、このアルゴリズムでは解決策が見つからない場合があります。つまり、アルゴリズムが無限に検索されないようにカットオフポイントを定義する必要があります。このアプローチの利点は、メモリが効率的であることです。 | Hacker Earth |
分割と征服 | これは、問題を可能な限り小さなものに分割し、可能な限り単純な方法で解決する、問題解決の手法です。この技術は、ブルートフォースなどの他のアプローチと比較して、かなりの時間とリソースを節約します。ただし、必ずしも最適な結果を保証するとは限りません。 | Khan Academy |
Dijikstra | これは、有向グラフ(正の重みを持つ)グラフの最短経路を見つけるために使用されるアルゴリズムです。 | オタクのオタク |
グラフ | グラフは、ツリー拡張の一種です。ツリーと同様に、ノードには互いに接続して関係を作成します。ただし、バイナリツリーとは異なり、グラフには1つ以上の接続があります。実際、グラフノードには多くの場合、多数の接続があります。 GPSのマップや、ツリーのトップダウンアプローチが機能しないあらゆる種類の場所で使用されるグラフが表示されます。 | チュートリアル |
欲張りアルゴリズム | 問題解決プロセスのすべてのステップで解決策が最良の答えに依存する問題解決の1つ。欲張りアルゴリズムは、一般的に2つの仮定を作ります: | <! - 2 - > |
与えられたステップで単一の最適な選択をすることが可能です。各ステップで最適な選択を選択することにより、全体の問題に対する最適解を見つけることが可能である。 | チュートリアル | グリーディ・ファースト・サーチ(BFS) |
アルゴリズムは、以下の方程式を用いてゴールに最も近い経路を常に選択する。【数9】(999) n) | 。この特定のアルゴリズムは、非常に迅速にソリューションを見つけることができますが、ループに詰まることもあります。多くの人々は、ソリューションを見つけるための最適なアプローチではないと考えています。センチュリオン2 | ハッシング |
これは、実際にそれを探し出す前に、データ構造内の特定のデータ項目の位置を予測する方法です(構造がどのようなものであろうと)。このアプローチは、インデックスに配置されたキーの使用に依存します。ハッシュ関数は、キーをアルゴリズムがハッシュテーブルに入れる数値に変換します。ハッシュテーブルは、アルゴリズムがデータの位置を容易に予測できるように、データ構造内の要素を指すインデックスを作成する手段を提供する。 | チュートリアル | ヒープ |
これはツリー構造にデータを挿入するための洗練されたツリーです。データ挿入を使用すると、ソートが高速になります。ツリー内に存在する最大値または最小値をすぐに提供できるツリーの能力に応じて、これらのツリーを最大ヒープおよび最小ヒープとしてさらに分類できます。ヒューリスティックス | チュートリアル | ヒューリスティック |
これは自己発見に頼って問題解決に役立つ結果が得られる(必ずしも最適ではないが十分に良い)必要です。自己発見とは、アルゴリズムがあなたに潜在的に有用な道を示すことを可能にするプロセスです(しかし、解決策が正しいかどうかを知るためには、人間の直感と理解を重視する必要があります)。 | 北西。 edu
MapReduce
アルゴリズムを並列で(ネットワーク内で複数のコンピュータを接続して)動作させるためのフレームワークです。 Hadoop Apache |
Mergesort |
Mergesortは、データをソートする汎用の比較ベースのメソッドです。これは、タスクを実行するための分割統治アプローチに依存します。 | オタクのオタク(Geeks for Geeks) ナッシュ均衡 これは、他の選手が他の選手の平衡戦略を知っているので、自分の戦略を変えることで誰も得られないゲーム理論です。この理論は、ゲームに勝つために他のすべてのプレイヤーが行った決定をプレイヤーが説明しなければならない敵対的な状況での使用を見ます。 Khan Academy PageRank | PageRankは、グラフ内のノードの重要度を測定するためのアルゴリズムです。このアルゴリズムは、ユーザーに関連する検索を強化するためのGoogleのコアアルゴリズムの根幹です。 |
プリンストン。 edu | 純ヒューリスティック検索 | このアルゴリズムはノードをコストの順に展開する。それは2つのリストを維持します。閉じたリストには既に探索したノードが含まれ、開いているリストにはまだ探索しなければならないノードが含まれます。各反復において、アルゴリズムは可能な限り低いコストでノードを展開する。すべての子ノードが閉じられたリストに配置され、個々の子ノードコストが計算されます。このアルゴリズムは、低コストの子ノードをオープンリストに戻し、高コストで子ノードを削除する。結果として、このアルゴリズムは、ソリューションのインテリジェントでコストベースの検索を実行する。 |
World of Computing | クイックソート | これは、データの配列をより小さな配列に分割することに基づく汎用ソート戦略です。これは、タスクを実行するための分割統治アプローチに依存します。 |
チュートリアル | アンバランスツリー | これは、バランスに関係なくツリー内に必要な場所に新しいデータ項目を配置するツリーです。このアイテムを追加する方法は、ツリーの構築を高速化しますが、検索や並べ替えの際のアクセス速度を低下させます。 |
Quora | <! - 3 - > |