ホームページ >バックエンド開発 >Python チュートリアル >1 つの Python ですべてのアルゴリズムを実装できる
今日は、Python を学習するための役立つヒントをお勧めします。
数人のインド人が、さまざまな Python アルゴリズムの入門ガイドを GitHub 上に作成し、現在 26,000 を超えるスターが付いています。
このプロジェクトは主に 2 つの部分で構成されています。1 つはさまざまなアルゴリズムの基本原理の説明で、もう 1 つはさまざまなアルゴリズムのコード実装です。
ポータルはこちらです:
https://github.com/TheAlgorithms/Python
簡単な紹介。
ソートアルゴリズム、検索アルゴリズム、補間アルゴリズム、ジャンプ検索アルゴリズム、高速選択アルゴリズム、タブー検索アルゴリズム、暗号化アルゴリズムなどのアルゴリズムの基本原理の説明。
関連する推奨事項: 「Python ビデオ チュートリアル 」
このパートでは主にさまざまなアルゴリズムの原理を紹介し、その多くには動的な概略図も示されています。より直感的に。いくつかの例を移動します:
カクテル ソート アルゴリズム
カクテル シェーカー ソート (双方向バブル ソートとも呼ばれます) 、など。これはバブルソートのバリエーションです。違いは、バブル ソートはシーケンス内の各要素を低位から高位の順序で比較するのに対し、カクテル ソートは 2 方向 (低位から高位、高位から低位) に前後にソートするため、より効率的であることです。
#クイック選択アルゴリズム
##クイック選択アルゴリズム。順序なしリストの検索に使用されます。 内の k 番目に小さい要素。このアルゴリズムとその変形は、実際に最も一般的に使用される効率的な選択アルゴリズムです。 クイック選択アルゴリズムはクイック ソート アルゴリズムと似ており、要素を分割するためのベンチマークとして要素を選択し、ベンチマークより小さい要素と大きい要素を左側の 2 つの領域に分割します。そして基準点の右側。違いは、クイック選択では両側に再帰的にアクセスするのではなく、片側の要素のみを再帰的に入力して検索を継続することです。
ROT13 暗号化アルゴリズム
Rot13 (13 桁回転) は、非常に単純な代替暗号化アルゴリズムです。 26 文字の英語文字を暗号化します。方法は次のとおりです。各文字をその後の 13 番目の文字に置き換えます。 もちろん、このアルゴリズムも解読が非常に簡単で、逆置換のみを必要とするため、暗号化の安全性はほとんどなく、弱い暗号の典型としてよく使用されます。 さらに、このプロジェクトでは、さまざまな Python アルゴリズムのコード実装も提供します。 バイナリ ツリー、動的プログラミング、ハッシュ、線形代数、機械学習、ニューラル ネットワークなどが含まれます。
#たとえば、機械学習のカテゴリでは、ランダム フォレスト分類、ランダム フォレスト回帰、単純ベイズ、決定木、k 値クラスタリング、線形回帰、ロジスティック回帰、パーセプトロンなど。
これは、例として、勾配降下法コードの実装の図です:
このプロジェクトがあなたの研究に役立つことを願っています。別のポータルを提供します:
https://github.com/TheAlgorithms/Python
もう 1 つ。
これらのインド人たちは、Python を学習するプロジェクトを開始しただけでなく、Java、C、C、Scala、C# などの同様のリソース収集プロジェクトも開始しました...
以上が1 つの Python ですべてのアルゴリズムを実装できるの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。