Re-translate the Japanese version (#1871)

* Retranslate Japanese docs with GPT-5.4

* Retranslate Japanese code with GPT-5.4
This commit is contained in:
Yudong Jin
2026-03-30 07:30:15 +08:00
committed by GitHub
parent fe6443235b
commit d7b2277d2b
1444 changed files with 83312 additions and 8363 deletions
+21 -21
View File
@@ -1,46 +1,46 @@
# コントリビューション
# 一緒に制作に参加しましょう
著者の力に限りがあるため、本書にはいくつかの省略や誤りが避けられません。ご理解をお願いします。誤字、リンク切れ、内容の欠落、文章の曖昧さ、説明の不明さ、または不合理な文章構造を発見された場合は、読者により良質な学習リソースを提供するため、修正にご協力ください
著者の力に限りがあるため、本書にはどうしても一部の漏れや誤りが含まれる可能性があります。ご了承ください。誤字、リンク切れ、内容の欠落、表現の曖昧さ、説明の不明さ、文章構成の不適切さなどの問題を見つけた場合は、ぜひ修正にご協力ください。読者により良学習リソースを提供できます。
すべての[コントリビューター](https://github.com/krahets/hello-algo/graphs/contributors)のGitHub IDは、本書のリポジトリ、ウェブ、PDFバージョンのホームページに表示され、オープンソースコミュニティへの無私の貢献に感謝いたします。
すべての[寄稿者](https://github.com/krahets/hello-algo/graphs/contributors)の GitHub ID は、本書のリポジトリ、Web 版、PDF 版のホームページに掲載され、オープンソースコミュニティへの惜しみない貢献に感謝を表します。
!!! success "オープンソースの魅力"
紙の本の2つの印刷版の間隔はしばしば長く、内容更新非常に不便です。
しかし、このオープンソースの本では、内容更新サイクルは数日、さらには数時間に短縮されます。
紙の書籍では、2 回の増刷の間隔が長くなりがちで、内容更新非常に不便です。
一方、このオープンソース書籍では、内容更新サイクルは数日、場合によっては数時間にまで短縮されています。
### 内容の微調整
下の図に示すように、各ページの右上に「編集アイコン」があります。以下の手順に従ってテキストやコードを修正できます。
下の図ように、各ページの右上に「編集アイコン」があります。の手順で本文やコードを修正できます。
1. 「編集アイコン」をクリックします。「このリポジトリをフォークします」とされた場合は、同意してください。
2. Markdownソースファイルの内容を修正し、内容の正確性を確認し、フォーマットの一貫性を保つようにしてください。
3. ページ下部修正説明を記入し、「Propose file change」ボタンをクリックします。ページがリダイレクトされた後、「Create pull request」ボタンをクリックしてプルリクエストを開始します。
1. 「編集アイコン」をクリックし「このリポジトリを Fork する必要があります」と表示された場合は、その操作を承認してください。
2. Markdownソースファイルを修正し、内容が正しいことを確認したうえで、できるだけ書式の統一を保ってください。
3. ページ下部修正内容の説明を入力し、その後「Propose file change」ボタンをクリックします。ページ遷移後、「Create pull request」ボタンをクリックするとプルリクエストを作成できます。
![ページ編集ボタン](contribution.assets/edit_markdown.png)
は直接修正できないため、新しい[Issue](https://github.com/krahets/hello-algo/issues)を作成するか、問題を説明するコメントが必要です。できるだけ早く図を再描画して置き換えます。
画像は直接修正できないため、新しい [Issue](https://github.com/krahets/hello-algo/issues) を作成するかコメントで問題を説明してください。できるだけ早く描き直して差し替えます。
### 内容の作成
### コンテンツ制作
このオープンソースプロジェクトへの参加に興味がある場合、コードを他のプログラミング言語翻訳したり、記事内容を拡張したりすることを含めて、以下のプルリクエストワークフローを実装する必要があります
コードを他のプログラミング言語翻訳することや、記事内容を拡充することなど、このオープンソースプロジェクトへの参加に興味がある場合は、以下の Pull Request ワークフローに従ってください
1. GitHubにログインし、本書の[コードリポジトリ](https://github.com/krahets/hello-algo)を個人アカウントにフォークします。
2. フォークしたリポジトリのウェブページに移動し`git clone`コマンドを使用してリポジトリをローカルマシンにクローンします。
3. ローカルで内容を作成し、完全なテストを実行してコードの正確性を検証します。
4. ローカルで行った変更をコミットし、リモートリポジトリにプッシュします。
5. リポジトリのウェブページを更新し、「Create pull request」ボタンをクリックしてプルリクエストを開始します。
1. GitHub にログインし、本書の[コードリポジトリ](https://github.com/krahets/hello-algo)を個人アカウントに Fork します。
2. Fork したリポジトリのページに入り`git clone` コマンドを使てリポジトリをローカルにクローンします。
3. ローカルでコンテンツを作成し、完全なテストを行ってコードの正しさを確認します。
4. ローカルで行った変更を Commit し、その後リモートリポジトリへ Push します。
5. リポジトリのページを更新し、「Create pull request」ボタンをクリックするとプルリクエストを作成できます。
### Dockerデプロイメント
### Docker デプロイ
`hello-algo`ルートディレクトリで以下のDockerスクリプトを実行して`http://localhost:8000`プロジェクトにアクセスます
`hello-algo`ルートディレクトリで以下の Docker スクリプトを実行すると、`http://localhost:8000` で本プロジェクトにアクセスできます
```shell
docker-compose up -d
```
以下のコマンドを使用してデプロイメントを削除ます
以下のコマンドデプロイを削除できます
```shell
docker-compose down
+41 -41
View File
@@ -1,68 +1,68 @@
# インストール
# プログラミング環境のインストール
## IDEのインストール
## IDE のインストール
ローカルの統合開発環境(IDE)として、オープンソースで軽量なVS Codeを使用することをお勧めします。[VS Code公式ウェブサイト](https://code.visualstudio.com/)にアクセスし、お使いのオペレーティングシステムに適したVS Codeのバージョンを選択してダウンロードしインストールしてください。
オープンソースで軽量な VS Code をローカルの統合開発環境(IDE)として使用することを推奨します。[VS Code 公式サイト](https://code.visualstudio.com/) にアクセスし、使用している OS に応じたバージョンの VS Code をダウンロードしインストールしてください。
![公式ウェブサイトからVS Codeをダウンロード](installation.assets/vscode_installation.png)
![公式サイトから VS Code をダウンロード](installation.assets/vscode_installation.png)
VS Codeには強力な拡張機能エコシステムがあり、ほとんどのプログラミング言語の実行とデバッグをサポートしています。例えば、「Python Extension Pack」をインストールした後、Pythonコードをデバッグできます。インストール手順を下の図に示します。
VS Code には強力な拡張機能エコシステムがあり、ほとんどのプログラミング言語の実行とデバッグをサポートしています。Python を例にすると、「Python Extension Pack」拡張機能をインストールした後、Python コードをデバッグできるようになります。インストール手順を下に示します。
![VS Code拡張機能パックのインストール](installation.assets/vscode_extension_installation.png)
![VS Code 拡張機能のインストール](installation.assets/vscode_extension_installation.png)
## 言語環境のインストール
### Python環境
### Python 環境
1. [Miniconda3](https://docs.conda.io/en/latest/miniconda.html)をダウンロードしてインストールします。Python 3.10以降が必要です。
2. VS Code拡張機能マーケットプレイスで`python`を検索し、Python Extension Packをインストールします。
3. オプション)コマンドラインで`pip install black`を入力し、コードフォーマッティングツールをインストールします。
1. [Miniconda3](https://docs.conda.io/en/latest/miniconda.html) をダウンロードしてインストールします。Python 3.10 以降が必要です。
2. VS Code拡張機能マーケットプレイスで `python` を検索し、Python Extension Pack をインストールします。
3. 任意)コマンドラインで `pip install black` を入力し、コード整形ツールをインストールします。
### C/C++環境
### C/C++ 環境
1. Windowsシステムでは[MinGW](https://sourceforge.net/projects/mingw-w64/files/)をインストールする必要があります([設定チュートリアル](https://blog.csdn.net/qq_33698226/article/details/129031241))。MacOSにはClangが付属しているため、インストールは不要です。
2. VS Code拡張機能マーケットプレイスで`c++`を検索し、C/C++ Extension Packをインストールします。
3. オプション)設定ページを開き、`Clang_format_fallback Style`コードフォーマッティングオプションを検索し、`{ BasedOnStyle: Microsoft, BreakBeforeBraces: Attach }`に設定します。
1. Windows システムでは [MinGW](https://sourceforge.net/projects/mingw-w64/files/) をインストールする必要があります([設定チュートリアル](https://blog.csdn.net/qq_33698226/article/details/129031241))。MacOS には Clang が標準搭載されているため、追加インストールは不要です。
2. VS Code拡張機能マーケットプレイスで `c++` を検索し、C/C++ Extension Pack をインストールします。
3. 任意)Settings ページを開き、コード整形オプション `Clang_format_fallback Style` を検索し`{ BasedOnStyle: Microsoft, BreakBeforeBraces: Attach }` に設定します。
### Java環境
### Java 環境
1. [OpenJDK](https://jdk.java.net/18/)をダウンロードしてインストールします(バージョンはJDK 9より新しい必要があります)。
2. VS Code拡張機能マーケットプレイスで`java`を検索し、Extension Pack for Javaをインストールします。
1. [OpenJDK](https://jdk.java.net/18/) をダウンロードしてインストールします(バージョンは JDK 9 より新しい必要があります)。
2. VS Code拡張機能マーケットプレイスで `java` を検索し、Extension Pack for Java をインストールします。
### C#環境
### C# 環境
1. [.Net 8.0](https://dotnet.microsoft.com/en-us/download)をダウンロードしてインストールします。
2. VS Code拡張機能マーケットプレイスで`C# Dev Kit`を検索し、C# Dev Kitをインストールします([設定チュートリアル](https://code.visualstudio.com/docs/csharp/get-started))。
3. Visual Studioを使用することもできます([インストールチュートリアル](https://learn.microsoft.com/zh-cn/visualstudio/install/install-visual-studio?view=vs-2022))。
1. [.Net 8.0](https://dotnet.microsoft.com/en-us/download) をダウンロードしてインストールします。
2. VS Code拡張機能マーケットプレイスで `C# Dev Kit` を検索し、C# Dev Kit をインストールします([設定チュートリアル](https://code.visualstudio.com/docs/csharp/get-started))。
3. Visual Studio を使用することもできます([インストール手順](https://learn.microsoft.com/zh-cn/visualstudio/install/install-visual-studio?view=vs-2022))。
### Go環境
### Go 環境
1. [go](https://go.dev/dl/)をダウンロードしてインストールします。
2. VS Code拡張機能マーケットプレイスで`go`を検索し、Goをインストールします。
3. `Ctrl + Shift + P`を押してコマンドバーを呼び出し、goと入力し`Go: Install/Update Tools`を選択し、すべてを選択してインストールします。
1. [go](https://go.dev/dl/) をダウンロードしてインストールします。
2. VS Code拡張機能マーケットプレイスで `go` を検索し、Go をインストールします。
3. ショートカットキー `Ctrl + Shift + P` を押してコマンドパレットを開き、go と入力し`Go: Install/Update Tools` を選択し、すべてにチェックを入れてインストールします。
### Swift環境
### Swift 環境
1. [Swift](https://www.swift.org/download/)をダウンロードしてインストールします。
2. VS Code拡張機能マーケットプレイスで`swift`を検索し、[Swift for Visual Studio Code](https://marketplace.visualstudio.com/items?itemName=sswg.swift-lang)をインストールします。
1. [Swift](https://www.swift.org/download/) をダウンロードしてインストールします。
2. VS Code拡張機能マーケットプレイスで `swift` を検索し、[Swift for Visual Studio Code](https://marketplace.visualstudio.com/items?itemName=sswg.swift-lang) をインストールします。
### JavaScript環境
### JavaScript 環境
1. [Node.js](https://nodejs.org/en/)をダウンロードしてインストールします。
2. オプション)VS Code拡張機能マーケットプレイスで`Prettier`を検索し、コードフォーマッティングツールをインストールします。
1. [Node.js](https://nodejs.org/en/) をダウンロードしてインストールします。
2. 任意VS Code拡張機能マーケットプレイスで `Prettier` を検索し、コード整形ツールをインストールします。
### TypeScript環境
### TypeScript 環境
1. JavaScript環境と同じインストール手順に従います。
2. [TypeScript Execute (tsx)](https://github.com/privatenumber/tsx?tab=readme-ov-file#global-installation)をインストールします。
3. VS Code拡張機能マーケットプレイスで`typescript`を検索し、[Pretty TypeScript Errors](https://marketplace.visualstudio.com/items?itemName=yoavbls.pretty-ts-errors)をインストールします。
1. JavaScript 環境と同じ手順でインストールます。
2. [TypeScript Execute (tsx)](https://github.com/privatenumber/tsx?tab=readme-ov-file#global-installation) をインストールします。
3. VS Code拡張機能マーケットプレイスで `typescript` を検索し、[Pretty TypeScript Errors](https://marketplace.visualstudio.com/items?itemName=yoavbls.pretty-ts-errors) をインストールします。
### Dart環境
### Dart 環境
1. [Dart](https://dart.dev/get-dart)をダウンロードしてインストールします。
2. VS Code拡張機能マーケットプレイスで`dart`を検索し、[Dart](https://marketplace.visualstudio.com/items?itemName=Dart-Code.dart-code)をインストールします。
1. [Dart](https://dart.dev/get-dart) をダウンロードしてインストールします。
2. VS Code拡張機能マーケットプレイスで `dart` を検索し、[Dart](https://marketplace.visualstudio.com/items?itemName=Dart-Code.dart-code) をインストールします。
### Rust環境
### Rust 環境
1. [Rust](https://www.rust-lang.org/tools/install)をダウンロードしてインストールします。
2. VS Code拡張機能マーケットプレイスで`rust`を検索し、[rust-analyzer](https://marketplace.visualstudio.com/items?itemName=rust-lang.rust-analyzer)をインストールします。
1. [Rust](https://www.rust-lang.org/tools/install) をダウンロードしてインストールします。
2. VS Code拡張機能マーケットプレイスで `rust` を検索し、[rust-analyzer](https://marketplace.visualstudio.com/items?itemName=rust-lang.rust-analyzer) をインストールします。
+131 -131
View File
@@ -1,137 +1,137 @@
# 用語集
下の表は本書に登場する重要な用語をリストアップしており、以下の点に注意する価値があります
下の表は本書に登場する重要な用語を一覧にしたものです。特に次の点に注意してください
- 英語文献を読みやすくするため、用語の英語名を覚えることをお勧めします。
- 一部の用語は簡体字中国語と繁体字中国語で異なる名前を持ちます。
- 名詞の英語表現も覚えておくと、英語文献を読む際に役立ちます。
- 一部の名詞は、簡体字中国語と繁体字中国語で呼び方が異なります。
<p align="center"> 表 <id> &nbsp; データ構造とアルゴリズムの重要用語 </p>
| English | 日本語 | 简体中文 | 繁体中文 |
| ------------------------------ | ---------------------- | -------------- | -------------- |
| algorithm | アルゴリズム | 算法 | 演算法 |
| data structure | データ構造 | 数据结构 | 資料結構 |
| code | コード | 代码 | 程式碼 |
| file | ファイル | 文件 | 檔案 |
| function | 関数 | 函数 | 函式 |
| method | メソッド | 方法 | 方法 |
| variable | 変数 | 变量 | 變數 |
| asymptotic complexity analysis | 漸近計算量解析 | 渐近复杂度分析 | 漸近複雜度分析 |
| time complexity | 時間計算量 | 时间复杂度 | 時間複雜度 |
| space complexity | 空間計算量 | 空间复杂度 | 空間複雜度 |
| loop | ループ | 循环 | 迴圈 |
| iteration | 反復 | 迭代 | 迭代 |
| recursion | 再帰 | 递归 | 遞迴 |
| tail recursion | 末尾再帰 | 尾递归 | 尾遞迴 |
| recursion tree | 再帰木 | 递归树 | 遞迴樹 |
| big-$O$ notation | ビッグO記法 | 大 $O$ 记号 | 大 $O$ 記號 |
| asymptotic upper bound | 漸近上界 | 渐近上界 | 漸近上界 |
| sign-magnitude | 符号絶対値 | 原码 | 原碼 |
| 1's complement | 1の補数 | 反码 | 一補數 |
| 2's complement | 2の補数 | 补码 | 二補數 |
| array | 配列 | 数组 | 陣列 |
| index | インデックス | 索引 | 索引 |
| linked list | 連結リスト | 链表 | 鏈結串列 |
| linked list node, list node | 連結リストノード | 链表节点 | 鏈結串列節點 |
| head node | 先頭ノード | 头节点 | 頭節點 |
| tail node | 末尾ノード | 尾节点 | 尾節點 |
| list | リスト | 列表 | 串列 |
| dynamic array | 動的配列 | 动态数组 | 動態陣列 |
| hard disk | ハードディスク | 硬盘 | 硬碟 |
| random-access memory (RAM) | メモリ | 内存 | 記憶體 |
| cache memory | キャッシュメモリ | 缓存 | 快取 |
| cache miss | キャッシュミス | 缓存未命中 | 快取未命中 |
| cache hit rate | キャッシュヒット率 | 缓存命中率 | 快取命中率 |
| stack | スタック | 栈 | 堆疊 |
| top of the stack | スタックトップ | 栈顶 | 堆疊頂 |
| bottom of the stack | スタックボトム | 栈底 | 堆疊底 |
| queue | キュー | 队列 | 佇列 |
| double-ended queue | 両端キュー | 双向队列 | 雙向佇列 |
| front of the queue | キュー先頭 | 队首 | 佇列首 |
| rear of the queue | キュー末尾 | 队尾 | 佇列尾 |
| hash table | ハッシュテーブル | 哈希表 | 雜湊表 |
| hash set | ハッシュセット | 哈希集合 | 雜湊集合 |
| bucket | バケット | 桶 | 桶 |
| hash function | ハッシュ関数 | 哈希函数 | 雜湊函式 |
| hash collision | ハッシュ衝突 | 哈希冲突 | 雜湊衝突 |
| load factor | 負荷率 | 负载因子 | 負載因子 |
| separate chaining | チェイン法 | 链式地址 | 鏈結位址 |
| open addressing | オープンアドレス法 | 开放寻址 | 開放定址 |
| linear probing | 線形プローブ法 | 线性探测 | 線性探查 |
| lazy deletion | 遅延削除 | 懒删除 | 懶刪除 |
| binary tree | 二分木 | 二叉树 | 二元樹 |
| tree node | 木のノード | 树节点 | 樹節點 |
| left-child node | 左子ノード | 左子节点 | 左子節點 |
| right-child node | 右子ノード | 右子节点 | 右子節點 |
| parent node | 親ノード | 父节点 | 父節點 |
| left subtree | 左部分木 | 左子树 | 左子樹 |
| right subtree | 右部分木 | 右子树 | 右子樹 |
| root node | ルートノード | 根节点 | 根節點 |
| leaf node | 葉ノード | 叶节点 | 葉節點 |
| edge | エッジ | 边 | |
| level | レベル | 层 | 層 |
| degree | 次数 | 度 | 度 |
| height | 高さ | 高度 | 高度 |
| depth | 深さ | 深度 | 深度 |
| perfect binary tree | 完二分木 | 完美二叉树 | 完美二元樹 |
| complete binary tree | 完全二分木 | 完全二叉树 | 完全二元樹 |
| full binary tree | 満二分木 | 完满二叉树 | 完滿二元樹 |
| balanced binary tree | 平衡二分木 | 平衡二叉树 | 平衡二元樹 |
| binary search tree | 二分探索木 | 二叉搜索树 | 二元搜尋樹 |
| AVL tree | AVL木 | AVL 树 | AVL |
| red-black tree | 赤黒木 | 红黑树 | 紅黑樹 |
| level-order traversal | レベル順走査 | 层序遍历 | 層序走訪 |
| breadth-first traversal | 幅優先走査 | 广度优先遍历 | 廣度優先走訪 |
| depth-first traversal | 深さ優先走査 | 深度优先遍历 | 深度優先走 |
| binary search tree | 二分探索木 | 二叉搜索树 | 二元搜尋樹 |
| balanced binary search tree | 平衡二分探索木 | 平衡二叉搜索树 | 平衡二元搜尋樹 |
| balance factor | 平衡因子 | 平衡因子 | 平衡因子 |
| heap | ヒープ | 堆 | 堆積 |
| max heap | 最大ヒープ | 大顶堆 | 大頂堆積 |
| min heap | 最小ヒープ | 小顶堆 | 小頂堆積 |
| priority queue | 優先度キュー | 优先队列 | 優先佇列 |
| heapify | ヒープ化 | 堆化 | 堆積化 |
| top-$k$ problem | Top-$k$ 問題 | Top-$k$ 问题 | Top-$k$ 問題 |
| graph | グラフ | 图 | 圖 |
| vertex | 頂点 | 顶点 | 頂點 |
| undirected graph | 無向グラフ | 无向图 | 無向圖 |
| directed graph | 有向グラフ | 有向图 | 有向圖 |
| connected graph | 連結グラフ | 连通图 | 連通圖 |
| disconnected graph | 非連結グラフ | 非连通图 | 非連通圖 |
| weighted graph | 重み付きグラフ | 有权图 | 有權圖 |
| adjacency | 隣接 | 邻接 | 鄰接 |
| path | パス | 路径 | 路 |
| in-degree | 入次数 | 入度 | 入度 |
| out-degree | 出次数 | 出度 | 出度 |
| adjacency matrix | 隣接行列 | 邻接矩阵 | 鄰接矩陣 |
| adjacency list | 隣接リスト | 邻接表 | 鄰接表 |
| breadth-first search | 幅優先探索 | 广度优先搜索 | 廣度優先搜尋 |
| depth-first search | 深さ優先探索 | 深度优先搜索 | 深度優先搜尋 |
| binary search | 二分探索 | 二分查找 | 二分搜尋 |
| searching algorithm | 探索アルゴリズム | 搜索算法 | 搜尋演算法 |
| sorting algorithm | ソートアルゴリズム | 排序算法 | 排序演算法 |
| selection sort | 選択ソート | 选择排序 | 選擇排序 |
| bubble sort | バブルソート | 冒泡排序 | 泡沫排序 |
| insertion sort | 挿入ソート | 插入排序 | 插入排序 |
| quick sort | クイックソート | 快速排序 | 快速排序 |
| merge sort | マージソート | 归并排序 | 合併排序 |
| heap sort | ヒープソート | 堆排序 | 堆積排序 |
| bucket sort | バケットソート | 桶排序 | 桶排序 |
| counting sort | 計数ソート | 计数排序 | 計數排序 |
| radix sort | 基数ソート | 基数排序 | 基數排序 |
| divide and conquer | 分割統治 | 分治 | 分治 |
| hanota problem | ハノイの塔問題 | 汉诺塔问题 | 河內塔問題 |
| backtracking algorithm | バックトラッキング | 回溯算法 | 回溯演算法 |
| constraint | 制約 | 约束 | 約束 |
| solution | 解 | 解 | 解 |
| state | 状態 | 状态 | 狀態 |
| pruning | 枝刈り | 剪枝 | 剪枝 |
| permutations problem | 順列問題 | 全排列问题 | 全排列問題 |
| subset-sum problem | 部分集合和問題 | 子集和问题 | 子集合問題 |
| $n$-queens problem | $n$ クイーン問題 | $n$ 皇后问题 | $n$ 皇后問題 |
| dynamic programming | 動的プログラミング | 动态规划 | 動態規劃 |
| initial state | 初期状態 | 初始状态 | 初始狀態 |
| state-transition equation | 状態遷移方程式 | 状态转移方程 | 狀態轉移方程 |
| knapsack problem | ナップサック問題 | 背包问题 | 背包問題 |
| edit distance problem | 編集距離問題 | 编辑距离问题 | 編距離問題 |
| greedy algorithm | 貪欲アルゴリズム | 贪心算法 | 貪婪演算法 |
| English | 日本語 | 日本語 |
| ------------------------------ | -------------- | -------------- |
| algorithm | アルゴリズム | アルゴリズム |
| data structure | データ構造 | データ構造 |
| code | コード | コード |
| file | ファイル | ファイル |
| function | 関数 | 関数 |
| method | メソッド | メソッド |
| variable | 変数 | 変数 |
| asymptotic complexity analysis | 漸近計算量解析 | 漸近計算量解析 |
| time complexity | 時間計算量 | 時間計算量 |
| space complexity | 空間計算量 | 空間計算量 |
| loop | ループ | ループ |
| iteration | 反復 | 反復 |
| recursion | 再帰 | 再帰 |
| tail recursion | 末尾再帰 | 末尾再帰 |
| recursion tree | 再帰木 | 再帰木 |
| big-$O$ notation | ビッグオー記法 | ビッグオー記法 |
| asymptotic upper bound | 漸近上界 | 漸近上界 |
| sign-magnitude | 符号絶対値表現 | 符号絶対値表現 |
| 1s complement | 1の補数 | 1の補数 |
| 2s complement | 2の補数 | 2の補数 |
| array | 配列 | 配列 |
| index | インデックス | インデックス |
| linked list | 連結リスト | 連結リスト |
| linked list node, list node | 連結リストノード | 連結リストノード |
| head node | 先頭ノード | 先頭ノード |
| tail node | 末尾ノード | 末尾ノード |
| list | リスト | リスト |
| dynamic array | 動的配列 | 動的配列 |
| hard disk | ハードディスク | ハードディスク |
| random-access memory (RAM) | メモリ | メモリ |
| cache memory | キャッシュ | キャッシュ |
| cache miss | キャッシュミス | キャッシュミス |
| cache hit rate | キャッシュヒット率 | キャッシュヒット率 |
| stack | スタック | スタック |
| top of the stack | スタックトップ | スタックトップ |
| bottom of the stack | スタックボトム | スタックボトム |
| queue | キュー | キュー |
| double-ended queue | 両端キュー | 両端キュー |
| front of the queue | キュー先頭 | キュー先頭 |
| rear of the queue | キュー末尾 | キュー末尾 |
| hash table | ハッシュテーブル | ハッシュテーブル |
| hash set | ハッシュ集合 | ハッシュ集合 |
| bucket | バケット | バケット |
| hash function | ハッシュ関数 | ハッシュ関数 |
| hash collision | ハッシュ衝突 | ハッシュ衝突 |
| load factor | 負荷率 | 負荷率 |
| separate chaining | 連鎖アドレス法 | 連鎖アドレス法 |
| open addressing | オープンアドレス法 | オープンアドレス法 |
| linear probing | 線形探索 | 線形探索 |
| lazy deletion | 遅延削除 | 遅延削除 |
| binary tree | 二分木 | 二分木 |
| tree node | ノード | ノード |
| left-child node | 左子ノード | 左子ノード |
| right-child node | 右子ノード | 右子ノード |
| parent node | 親ノード | 親ノード |
| left subtree | 左部分木 | 左部分木 |
| right subtree | 右部分木 | 右部分木 |
| root node | 根ノード | 根ノード |
| leaf node | 葉ノード | 葉ノード |
| edge | | |
| level | レベル | レベル |
| degree | 次数 | 次数 |
| height | 高さ | 高さ |
| depth | 深さ | 深さ |
| perfect binary tree | 完二分木 | 完備二分木 |
| complete binary tree | 完全二分木 | 完全二分木 |
| full binary tree | 満二分木 | 満二分木 |
| balanced binary tree | 平衡二分木 | 平衡二分木 |
| binary search tree | 二分探索木 | 二分探索木 |
| AVL tree | AVL 木 | AVL |
| red-black tree | 赤黒木 | 赤黒木 |
| level-order traversal | レベル順走査 | レベル順走査 |
| breadth-first traversal | 幅優先走査 | 幅優先走査 |
| depth-first traversal | 深さ優先走査 | 深さ優先走 |
| binary search tree | 二分探索木 | 二分探索木 |
| balanced binary search tree | 平衡二分探索木 | 平衡二分探索木 |
| balance factor | 平衡係数 | 平衡係数 |
| heap | ヒープ | ヒープ |
| max heap | 最大ヒープ | 最大ヒープ |
| min heap | 最小ヒープ | 最小ヒープ |
| priority queue | 優先度付きキュー | 優先度付きキュー |
| heapify | ヒープ化 | ヒープ化 |
| top-$k$ problem | Top-$k$ 問題 | Top-$k$ 問題 |
| graph | グラフ | グラフ |
| vertex | 頂点 | 頂点 |
| undirected graph | 無向グラフ | 無向グラフ |
| directed graph | 有向グラフ | 有向グラフ |
| connected graph | 連結グラフ | 連結グラフ |
| disconnected graph | 非連結グラフ | 非連結グラフ |
| weighted graph | 重み付きグラフ | 重み付きグラフ |
| adjacency | 隣接 | 隣接 |
| path | 経路 | 路 |
| in-degree | 入次数 | 入次数 |
| out-degree | 出次数 | 出次数 |
| adjacency matrix | 隣接行列 | 隣接行列 |
| adjacency list | 隣接リスト | 隣接リスト |
| breadth-first search | 幅優先探索 | 幅優先探索 |
| depth-first search | 深さ優先探索 | 深さ優先探索 |
| binary search | 二分探索 | 二分探索 |
| searching algorithm | 探索アルゴリズム | 探索アルゴリズム |
| sorting algorithm | ソートアルゴリズム | ソートアルゴリズム |
| selection sort | 選択ソート | 選択ソート |
| bubble sort | バブルソート | バブルソート |
| insertion sort | 挿入ソート | 挿入ソート |
| quick sort | クイックソート | クイックソート |
| merge sort | マージソート | マージソート |
| heap sort | ヒープソート | ヒープソート |
| bucket sort | バケットソート | バケットソート |
| counting sort | 計数ソート | 計数ソート |
| radix sort | 基数ソート | 基数ソート |
| divide and conquer | 分割統治 | 分割統治 |
| hanota problem | ハノイの塔問題 | ハノイの塔問題 |
| backtracking algorithm | バックトラッキングアルゴリズム | バックトラッキングアルゴリズム |
| constraint | 制約 | 制約 |
| solution | 解 | 解 |
| state | 状態 | 状態 |
| pruning | 枝刈り | 枝刈り |
| permutations problem | 順列問題 | 全順列問題 |
| subset-sum problem | 部分和問題 | 部分和問題 |
| $n$-queens problem | $n$ クイーン問題 | $n$ クイーン問題 |
| dynamic programming | 動的計画法 | 動的計画法 |
| initial state | 初期状態 | 初期状態 |
| state-transition equation | 状態遷移方程式 | 状態遷移方程 |
| knapsack problem | ナップサック問題 | ナップサック問題 |
| edit distance problem | 編集距離問題 | 編距離問題 |
| greedy algorithm | 貪欲 | 貪欲法 |