解説と参考リンク付きで、定番のアルゴリズムとデータ構造をJavaScriptで実装したコレクションです。
TheAlgorithms/Go
学習や面接対策を目的に、定番のアルゴリズムとデータ構造をGoで実装したコレクションです。
- スター
- 18,236
- フォーク
- 2,827
- 未解決の Issue
- 10
- 最終コミット
- 3 か月前
これは何?
TheAlgorithms organizationの一部であるこのリポジトリには、Goで書かれた一般的なアルゴリズムやデータ構造の実装が集められています。コードは、ソート、検索、グラフアルゴリズム、動的計画法、数学、文字列処理、暗号、圧縮のほか、連結リスト、ヒープ、ハッシュマップ、deque、キャッシュなどのデータ構造ごとにパッケージへ整理されています。
各パッケージは学習用のリファレンスとして利用できるように作られており、関数にはアプローチや計算量、場合によっては参考資料へのリンクを説明するdocコメントが付いています。プロジェクトはMITライセンスで公開されており、貢献ガイドラインに沿ったコミュニティからの貢献を受け付けています。
特定のアルゴリズムをGoらしい書き方で実装するとどうなるかを知りたい開発者や、アルゴリズム問題に取り組んでいて、比較用の実装を探している人に特に役立ちます。
主な機能
- 01ソート、検索、グラフ、動的計画法のアルゴリズムを収録
- 02連結リスト、ヒープ、ハッシュマップ、deque、LRU/LFUキャッシュなどのデータ構造を収録
- 03数学、文字列、暗号、圧縮の実装を提供
- 04関数にはアプローチや計算量を説明するdocコメントを記載
ユースケース
- 定番アルゴリズムのGoらしい実装方法を学ぶ
- リファレンス実装を使って技術面接の準備をする
- 自分の解法を既知の実装と比較する
使う前に知っておきたいこと
- READMEでは実装は学習目的と説明されており、本番環境向けのライブラリとしては紹介されていません。
収録されている特集
トピック
よくある質問
- Go とは?
- 学習や面接対策を目的に、定番のアルゴリズムとデータ構造をGoで実装したコレクションです。 TheAlgorithms organizationの一部であるこのリポジトリには、Goで書かれた一般的なアルゴリズムやデータ構造の実装が集められています。コードは、ソート、検索、グラフアルゴリズム、動的計画法、数学、文字列処理、暗号、圧縮のほか、連結リスト、ヒープ、ハッシュマップ、deque、キャッシュなどのデータ構造ごとにパッケージへ整理されています。
- Go は無料で使えますか?ライセンスは?
- Go は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- Go は今もメンテナンスされていますか?
- 半年以内に更新あり。Go の最終コミットは 2026年8月3日 です。
- Go は何に使えますか?
- 定番アルゴリズムのGoらしい実装方法を学ぶ リファレンス実装を使って技術面接の準備をする 自分の解法を既知の実装と比較する
- Go はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/TheAlgorithms/Go
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
学習・教育を目的に、Pythonで実装したアルゴリズムをコミュニティが保守するコレクション。
外部ライブラリに依存せず、数学、機械学習、コンピューターサイエンス、物理学のアルゴリズムとデータ構造をC++17で実装した教育向けコレクションです。
学習を目的に、古典的なアルゴリズムとデータ構造をJavaで実装したコレクションです。
LeetCodeの問題を、コード解答の暗記ではなく、再利用できる思考フレームワークを通じて学べる中国語のアルゴリズム学習ガイド。
実行可能なコードを十数以上のプログラミング言語で掲載した、無料のオープンソース図解データ構造・アルゴリズム入門書。