Go 言語 - データ構造とアルゴリズム プロジェクト

Go 言語 - データ構造とアルゴリズム プロジェクト

[[404457]]

この記事はWeChatの公開アカウント「roseduanの執筆場所」から転載したもので、著者はroseduanです。この記事を転載する場合は、roseduanが執筆しているローカルの公開アカウントまでご連絡ください。

今日私が共有するのは、いくつかのデータ構造とアルゴリズムのプロジェクトです。私が自分でGo言語を学んでいたとき、基本的な文法知識を習得した後、LeetCodeの問題を集中的に解いて文法知識を強化し、アルゴリズムの問​​題を解く感覚も維持できました。これは一石二鳥と言えます。

以下の優れたプロジェクトから、あなたにぴったりのプロジェクトがきっと見つかるはずです。

1. ゴッド

Githubアドレス: https://github.com/emirpasic/gods

星の数: 9.9k

Go Data Structures は、リンクリスト、スタック、ハッシュテーブル、ツリーなど、実際のプロジェクトに直接導入できる一般的なデータ構造を実装しています。命名スタイルは Java のクラス名に似ています (作者は Java に深く影響を受けていると推測されます、笑)。たとえば、次のようになります。

  • 配列リスト
  • 配列スタック
  • ハッシュセット
  • ツリーセット
  • リンクハッシュセット
  • レッドブラックツリー

もちろん、データ構造を学習したり、専門家のコードがどのように書かれているかを確認したりすることもできます。

2. goデータ構造

Github アドレス: https://github.com/Workiva/go-datastructures

星の数: 6k

上記のプロジェクトと同様に、これも Go 言語を使用してさまざまなデータ構造を実装するプロジェクトですが、より多様なデータ構造をサポートしています。いくつかの基本的なものに加えて、BitArray、BTree、フィボナッチヒープ、グラフ、AVL ツリー、プレフィックスツリーなどの高度なデータ構造もあります。

より難しいデータ構造に挑戦したい場合は、このプロジェクトで学習したり参照したりできるコードを見つけることができるはずです。

3. アルゴリズム/Go

Githubアドレス: https://github.com/TheAlgorithms/Go

星の数: 5.3k

これは、TheAlgorithms シリーズの Go 言語実装です。TheAlgorithms シリーズには、Python、Java、Go、C++、JavaScript など、多くの言語のバージョンがあることがわかっています。

このプロジェクトは学習に適しています。数学、バイナリ検索、ソート、文字列マッチング、アルゴリズムの練習問題など、多くの基本的なアルゴリズムの例が含まれています。

4. アルゴリズムパターン

Githubアドレス: https://github.com/greyireland/algorithm-pattern

星の数: 11.5k

このプロジェクトでは、主に一般的な質問解決テンプレートと、回答する質問の数、回答する順序、質問への回答の効率を向上させる方法など、いくつかのよくある質問を紹介します。

著者がまとめたテンプレートは非常に包括的で、説明も非常に詳細です。

一時的なアルゴリズムの練習や面接対策に適しているため、Go 言語を学習していなくても、質問の練習で経験を積むことができます。

プロジェクトにはいくつかの書籍の推奨もあり、ドキュメントも非常に包括的です。

5. リートコードゴー

Githubアドレス: https://github.com/halfrost/LeetCode-Go

星の数: 17.4k

名前が示すように、これは Go 言語を使用して Leetcode の問題を実装し、より実用的な問題解決に重点を置いたプロジェクトです。

現在、このプロジェクトには 600 以上の LeetCode の質問が含まれており、質問ごとに詳細な解決策のアイデアと完全なコード実装が用意されています。

このプロジェクトには、サポート用の電子書籍やドキュメントも付属しており、非常に便利です。

6. hoanhan101/アルゴ

Githubアドレス: https://github.com/hoanhan101/algo

星の数: 3k

このプロジェクトは、面接プロセスで遭遇する最も一般的なアルゴリズム面接の質問のいくつかを著者が要約したもので、詳細なコード実装が含まれていますが、すべて英語です。英語が得意な学生は、英語を学んでみることができます。

7. shady831213/アルゴリズム

Githubアドレス: https://github.com/shady831213/algorithms

星の数: 504

このプロジェクトでは、動的プログラミング、貪欲アルゴリズム、グラフ、ツリー、ヒープなどの一般的に使用されるアルゴリズムとデータ構造を実装しています。コードは簡潔で明確であり、学習する価値があります。

<<:  速達荷物を受け取るには顔認証しか方法がないのでしょうか?上海郵政:申通、菜鳥郵政などと面談し、集荷の同意を得る必要がある

>>:  本物と見間違えるほどリアルなAI変顔技術は本当に完璧なのか?

推薦する

...

ビットコインアルゴリズム調整!世界の鉱山会社にとって採掘は困難に:利益は急激に減少

ビットコインの場合、その出力は固定されています。つまり、マイニングする人が増えれば増えるほど、マイニ...

ディープラーニングの最適化を理解するにはどうすればよいでしょうか?勾配降下法の軌跡を分析することで

ニューラル ネットワークの最適化は本質的に非凸ですが、単純な勾配ベースの方法は常にこのような問題を解...

...

...

たった一枚の写真でTikTokガール全員が踊れる

数日前、アリババの研究チームは「Animate Anyone」と呼ばれる手法を構築しました。この手法...

日常生活におけるAIの優れた活用例

人工知能は、テクノロジーやビジネスの世界で広く議論されている人気のテクノロジーの 1 つです。 さま...

人工知能とビッグデータの隠れた危険性とは何でしょうか?

データの不足からデータの豊富さへと、近年利用可能なデータの量は飛躍的に増加し、ビッグデータはどこにで...

RNN モデルが Transformer の覇権に挑戦!ミストラル7Bに匹敵する1%のコストパフォーマンス、世界最多の100以上の言語をサポート

ビッグモデルが退化する中、トランスフォーマーの地位も次々と脅かされてきました。最近、RWKV は最新...

人工知能が人間の脳を再現できるかどうかは論争を巻き起こしている。米メディア「AIにはまだ限界がある」

[[239590]] 8月6日、自動運転車、ロボット医師、10億人を超える中国国民を対象とした社会...

ビジネスに人工知能を導入する際に考慮すべき3つの要素

最近、ますます多くの企業が人工知能に投資しています。しかし、成功するには、推論の解釈可能性、データ密...

...

「ビッグデータが古い顧客を殺す」といった混乱が顕著になる中、どのような「アルゴリズム」が必要なのでしょうか?

次のような経験をしたことはありませんか。求人検索サイトで仕事の希望に関するアンケートに答えると、サイ...

...