データ構造

データ構造

データ構造とは

データ構造は、データの「整理の仕方」を学ぶ分野です。整理の仕方しだいで、プログラムの速さは桁違いに変わります。

配列・リスト・スタック・キュー・木・グラフ・ハッシュという代表選手を、身近な例えとともに1つずつ手に入れていきます。

このカテゴリーで学べること

  • 配列とリストの違い(一発アクセス vs つなぎ替え)
  • スタック(LIFO)とキュー(FIFO)の使い分け
  • 木構造・二分探索木・ヒープの仕組み
  • グラフと隣接行列・隣接リストの読み書き
  • ハッシュ表と衝突対策(チェイン法・オープンアドレス法)

この分野の記事一覧(読む順)

  1. 線形構造
  2. スタックとキュー
  3. 木構造
  4. グラフ構造
  5. ハッシュ

おすすめの読み進め方

  1. まずは「線形構造」で、配列とリストの違いをつかむ
  2. 次に「スタックとキュー」で、出し入れの順番ルールを学ぶ
  3. 「木構造」で、階層データのたどり方を理解する
  4. 「グラフ構造」で、つながりのモデル化を学ぶ
  5. 最後に「ハッシュ」で、ほぼ1回で見つける仕組みを手に入れる

学習のポイント

各構造の「得意技」を一言で言えるようになるのがゴールです(配列=一発アクセス、スタック=逆順、ハッシュ=即発見…)。

ここで身につけた構造は、次の「アルゴリズム」の道具になります。

データ構造

線形構造

基本情報技術者試験の「線形構造」を初心者向けに解説。配列とリストの違いを「マンション」と「宝探し」の例えで整理し、ポインタの意味、挿入・削除の速さの理由まで、図解と確認問題つきでまとめました。
データ構造

スタックとキュー

基本情報技術者試験の「スタックとキュー」を初心者向けに解説。LIFOとFIFOの違い、push/popのトレース問題の解き方、関数呼び出しとの関係まで、皿の山とレジの行列の例えで図解と確認問題つきでまとめました。
データ構造

木構造

基本情報技術者試験の「木構造」を初心者向けに解説。根・節点・葉の用語、二分探索木の「左
データ構造

グラフ構造

基本情報技術者試験の「グラフ構造」を初心者向けに解説。ノードとエッジ、有向・無向の違い、隣接行列の読み書きと隣接リストの使い分けまで、路線図の例えで図解と確認問題つきでまとめました。
データ構造

ハッシュ

基本情報技術者試験の「ハッシュ」を初心者向けに解説。ハッシュ関数のmod計算、衝突とチェイン法・オープンアドレス法の違い、探索速度の比較まで、下駄箱の例えで図解と確認問題つきでまとめました。