情報システム演習 (2016) 第4回

データ構造とアルゴリズム 1/2

情報システム演習第1回,第2回,第3回はコンピュータの基本要素をボトムアップに見てきました.第4回はこれまでと逆にトップダウンで見ていきます.

アルゴリズム

教科書にある通り,アルゴリズムとは何らかの問題を有限の時間で解くための手順のことです.この段階では

  • 定数
  • 変数
  • フローチャート(流れ図)

を理解しておけば十分です.フローチャートの要素としては

  • 開始と終了
  • 処理
  • 判断(条件分岐)
  • ループ

を理解して下さい.これだけでは実際のプログラム作成には非力すぎるので,実際にプログラムを書く段階になれば追加でいろいろ勉強することが出てきます.

データ構造

データに構造がないと,我々人間には不便で仕方ありません.例えば自分の住む家には○○町○○丁目○○番地のような住所構造がないと,他の人に説明するときに非常に苦労します.

コンピュータの中のメモリはビットがただひたすら並んでいるだけですから,このままでは住所構造のない土地のようです.そこで,様々なデータ構造がコンピュータのために考えられてきました.

代表的なデータ構造は教科書にある通り

  • 配列
  • リスト構造
  • キューとスタック
  • 木構造

です.またこれらのデータ構造に対する操作として

  • データの整列(ソート)
  • データの探索

といった話題を取り扱います.

講義では具体的な例をいろいろ紹介します.ソートに関しては

  • バブルソートとクイックソート
  • セレクションソートとヒープソート
  • インサーションソートとシェルソート

を紹介する予定です…予定でしたが,わかりやすい動画を見つけましたので,こちらを先に紹介します.

こちらのニコ動も参考になります.

このエディタプラグインも参考になりますね.

こんな動画もあります.

One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.