━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
データ構造・アルゴリズム論 第4回「列と集合 2」の要点
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
スタック
        追加や削除の位置を一方の端だけに限る列
        後入れ先出し方式

スタックの基本操作
        生成            create()
        追加            push(s, a)
        削除            pop(s)
        参照            top(s)
        空判定          empty(s)

スタックの実現
        列を流用するスタック
        配列で直接表すスタック

キュー
        追加位置を一方の端に,削除位置を他方の端に限る列
        先入れ先出し方式

キューの基本操作
        生成            create()
        追加            insert(q, a)    enqueue
        削除            delete(q)       dequeue
        参照            top(q)
        空判定          empty(q)

キューの実現
        配列(の環状利用)によるキュー
        連結リストによるキュー

デク
        追加や削除を両端だけに限る(が一方だけに限らない)列

集合の実現
        0,1 が要素の配列による集合 (小さな自然数の集合の場合)
        列を流用する集合

写像の実現
        配列要素 a[i] に関数値 f(i) を格納 (定義域が小さな自然数の集合の場合)
        対の集合 {(d, f(d)) | d は f の定義域の要素} の表現

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
授業のホームページ

山田 俊行
https://www.cs.info.mie-u.ac.jp/~toshi/