Transcript
Page 1: C++ 研究  ~ 0 からの C++ ~

C++ 研究 ~ 0 からの C++ ~

北海道情報大学 情報メディア学部

情報メディア学科 新井山ゼミ0521602  佐藤 翼

Page 2: C++ 研究  ~ 0 からの C++ ~

前回までの成果• プログラム製作

– 文字列検索プログラム

Page 3: C++ 研究  ~ 0 からの C++ ~

今回までの進捗状況• プログラム製作

– 連結リスト構造 ( ノードクラス )• vector 、 list に続く第 3 のコンテナ

Page 4: C++ 研究  ~ 0 からの C++ ~

製作したプログラム• 正数を入力し、出力するプログラ

ム– 数字を入力– 終了条件を満たすと入力した数字全てを出力

0 以下

入力した全ての数字を出力

START

END

数字を入力

Page 5: C++ 研究  ~ 0 からの C++ ~

イメージ図 1

• 片方向リスト

245

123

1532

456

4238

789

0

4238245 1532  135

データ

ポインタ

アドレス

Page 6: C++ 研究  ~ 0 からの C++ ~

イメージ図 2• 循環リスト

• 双方向リスト

109

245

123

1532

456

4238

789

135

4238245 1532  135

データ

ポインタ

アドレス

109

245

123

1532

456

4238

789

0

データ

後ポインタ

前ポインタ

0 254 42381532

Page 7: C++ 研究  ~ 0 からの C++ ~

考察• 連結リスト構造

– 検索の高速化• 1 度検索して見つかったノードをリストの先頭に

移動させる方式など– メモリ確保

• 配列:領域をまとめて確保• 連結リスト:ランダムに確保

– 要素の挿入や削除の簡略化

Page 8: C++ 研究  ~ 0 からの C++ ~

今後の課題• 継続したプログラム開発

Page 9: C++ 研究  ~ 0 からの C++ ~

次回までの成果誓約• プログラム製作

– 2007 年 12 月 11 日に発表した検索プログラムをリスト構造を利用して再構築


Top Related