--- comments: true --- # 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 | 貪欲法 |