| 科目名 |
アルゴリズムとデータ構造I |
| クラス |
− |
| 授業の概要 |
数学の問題には、その問題の解き方はわかったとしても、現実的な時間の範囲内で解けるとは限らない問題が多く存在する。例えば、巨大な合成数の素因数分解も、2 から順に割って行けば、原理的には可能ではあるが、とてつもなく時間がかかることがある。このように、問題の解き方と、その計算時間との関係は、数学の問題だけではなく、プログラムを書く上でも重要であり、本授業では、各種アルゴリズムを提示し、その計算量についての講義と、そのアルゴリズムを用いたプログラム作成の演習を行う。 |
| 授業の到達目標 |
本授業では、情報免許科目『コンピュータと情報処理II』で使用したテキストと同じテキストを用いる。『コンピュータと情報処理II』では、テキストの 1 〜 9 章と 13 章に関して取り扱ったが、C言語によるプログラミングにおいて重要なポインタの扱い方やデータ構造の構築に関する講義や演習ができなかった。そこで、最初の5コマで、このような内容に関する講義・演習をした上で、ソート,サーチ,数値計算で用いられる、アルゴリズムとデータ構造について、その方法と計算量の講義・演習を行う。この授業は、各種アルゴリズムとデータ構造を理解し、あるアルゴリズムが与えられれば、そのアルゴリズムの時間的・空間的複雑さを正確に評価できることを、最低ラインの目標とする。 |
| 授業計画 |
以下の内容の講義と演習を行う。
| 回 |
内容 |
| 1 | 授業全体のオリエンテーション C言語の応用 (1) ポインタ |
| 2 | C言語の応用 (2) ポインタ |
| 3 | C言語の応用 (3) ポインタ |
| 4 | C言語の応用 (4) 構造体 |
| 5 | C言語の応用 (5) データ構造の構築 |
| 6 | アルゴリズムとデータ構造とは ソート・アルゴリズムと、その計算量 (1) |
| 7 | ソート・アルゴリズムと、その計算量 (2) |
| 8 | ソート・アルゴリズムと、その計算量 (3) |
| 9 | ソート・アルゴリズムと、その計算量 (4) |
| 10 | サーチ・アルゴリズムと、その計算量 (1) |
| 11 | サーチ・アルゴリズムと、その計算量 (2) |
| 12 | 数値計算と、その計算量 (1) |
| 13 | 数値計算と、その計算量 (2) |
| 14 | 各種データ構造 (1) |
| 15 | 各種データ構造 (2) |
|
| テキスト・参考書及び自学自習についての情報 |
テキスト: 新版 明解C言語 入門編,柴田望洋著,ソフトバンクパブリッシング このテキストは、情報免許科目『コンピュータと情報処理U』で使用したテキストと同じテキストである。 |
| 授業の形式 |
授業はすべて情報処理センターで行い、ある程度講義が進むたびに、演習を行う。 |
| 評価の方法(評価の配点比率と評価の要点) |
(1) 小レポート (40%) (2) 最終課題のレポート (60%) 1. (1) 小レポートとは、3 コマに 1 回のペースで、プログラムとその実行結果を提出するものである。 2.人のプログラムをコピーして提出したことが明らかになった場合は、レポート点は 0 点とする。 3.プログラミング技術は、一つずつ積み上げるようにして習得すべきものであるので、すべての授業に出席することが望ましい。やむを得ない事情で欠席した場合は、その欠席した授業で行われたことを自習しておくこと。 |
| 本授業に関する情報 |
本授業を履修する前に、情報免許科目『コンピュータと情報処理II』を履修しておくことが望ましい。履修していない受講生は、指定したテキストの 1 〜 9 章と 13 章を事前に読んでおくこと。 |
| その他 |
|