停電によるサーバ停止(2009/06/26-29)
停電に伴い、下記の時間帯に電子情報のサーバを停止します。
2009/6/26(Fri) 17:00~ 6/29(Mon) 8:00 理由:6/27(Sat) 11:00~12:00 の停電に伴うネットワーク停止。
追記:停電より復旧しました。 停止期間は、6/27 10:00-15:00 でした。
リスト構造の簡単処理とリスト生成
mallocの課題で、独学でリスト構造を勉強している人が、すでにリスト構造で 課題を提出してきたひともいたりするんだが….
前回の講義に引き続き、必要に応じてメモリを確保するリスト構造について 説明を行う。list要素の全印刷の説明のあと、簡単なサンプルプログラムを 黒板で書いてもらう。int sum(List*); int max(List*); int find(List*,int); などの プログラムを出題するが、次に説明する予定の再帰によってプログラムを 書く人もいて、授業に熱心な人が増えている結果だと思える。
ループによるsum,max,findの後、再帰によって処理の例を示す。 再帰によるプログラミングは、単純リスト構造ではあまり必要ではないが、 再帰関数の処理速度のオーダなどの説明でも、再帰に慣れてほしいし、 後で出てくる2分木構造での導入にもなるので、解説を行った。
データ構造の宣言の説明では、古い教科書でtypedefを使った宣言の例も多いので、 typedefによるList宣言や、C++での構造体タグ名が型名として使えることを説明する。