16.3 用語集¶
以下の表は、本書に登場する重要な用語を一覧にしたものです。英語文献を読む際に役立つよう、各名詞の英語表現も覚えておくことをおすすめします。
表 16-1 データ構造とアルゴリズムの重要用語
| 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 | 符号絶対値表現 |
| 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 木 |
| 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\) 問題 |
| 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\) クイーン問題 |
| dynamic programming | 動的計画法 |
| initial state | 初期状態 |
| state-transition equation | 状態遷移方程式 |
| knapsack problem | ナップサック問題 |
| edit distance problem | 編集距離問題 |
| greedy algorithm | 貪欲法 |