ホームページ >バックエンド開発 >Python チュートリアル >1 つの Python ですべてのアルゴリズムを実装できる

1 つの Python ですべてのアルゴリズムを実装できる

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼転載
2019-08-20 17:58:302634ブラウズ

1 つの Python ですべてのアルゴリズムを実装できる

今日は、Python を学習するための役立つヒントをお勧めします。

数人のインド人が、さまざまな Python アルゴリズムの入門ガイドを GitHub 上に作成し、現在 26,000 を超えるスターが付いています。

このプロジェクトは主に 2 つの部分で構成されています。1 つはさまざまなアルゴリズムの基本原理の説明で、もう 1 つはさまざまなアルゴリズムのコード実装です。

ポータルはこちらです:

https://github.com/TheAlgorithms/Python

簡単な紹介。

ソートアルゴリズム、検索アルゴリズム、補間アルゴリズム、ジャンプ検索アルゴリズム、高速選択アルゴリズム、タブー検索アルゴリズム、暗号化アルゴリズムなどのアルゴリズムの基本原理の説明。

関連する推奨事項: 「Python ビデオ チュートリアル

このパートでは主にさまざまなアルゴリズムの原理を紹介し、その多くには動的な概略図も示されています。より直感的に。いくつかの例を移動します:

カクテル ソート アルゴリズム

1 つの Python ですべてのアルゴリズムを実装できる

カクテル シェーカー ソート (双方向バブル ソートとも呼ばれます) 、など。これはバブルソートのバリエーションです。違いは、バブル ソートはシーケンス内の各要素を低位から高位の順序で比較するのに対し、カクテル ソートは 2 方向 (低位から高位、高位から低位) に前後にソートするため、より効率的であることです。

#クイック選択アルゴリズム

1 つの Python ですべてのアルゴリズムを実装できる

##クイック選択アルゴリズム。順序なしリストの検索に使用されます。 内の k 番目に小さい要素。このアルゴリズムとその変形は、実際に最も一般的に使用される効率的な選択アルゴリズムです。

クイック選択アルゴリズムはクイック ソート アルゴリズムと似ており、要素を分割するためのベンチマークとして要素を選択し、ベンチマークより小さい要素と大きい要素を左側の 2 つの領域に分割します。そして基準点の右側。違いは、クイック選択では両側に再帰的にアクセスするのではなく、片側の要素のみを再帰的に入力して検索を継続することです。

ROT13 暗号化アルゴリズム

1 つの Python ですべてのアルゴリズムを実装できる

Rot13 (13 桁回転) は、非常に単純な代替暗号化アルゴリズムです。 26 文字の英語文字を暗号化します。方法は次のとおりです。各文字をその後の 13 番目の文字に置き換えます。

もちろん、このアルゴリズムも解読が非常に簡単で、逆置換のみを必要とするため、暗号化の安全性はほとんどなく、弱い暗号の典型としてよく使用されます。

さらに、このプロジェクトでは、さまざまな Python アルゴリズムのコード実装も提供します。

バイナリ ツリー、動的プログラミング、ハッシュ、線形代数、機械学習、ニューラル ネットワークなどが含まれます。

1 つの Python ですべてのアルゴリズムを実装できる#たとえば、機械学習のカテゴリでは、ランダム フォレスト分類、ランダム フォレスト回帰、単純ベイズ、決定木、k 値クラスタリング、線形回帰、ロジスティック回帰、パーセプトロンなど。

これは、例として、勾配降下法コードの実装の図です:

1 つの Python ですべてのアルゴリズムを実装できる このプロジェクトがあなたの研究に役立つことを願っています。別のポータルを提供します:

https://github.com/TheAlgorithms/Python

もう 1 つ。

これらのインド人たちは、Python を学習するプロジェクトを開始しただけでなく、Java、C、C、Scala、C# などの同様のリソース収集プロジェクトも開始しました...

以上が1 つの Python ですべてのアルゴリズムを実装できるの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はjianshu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。