正しいアルゴリズムを作るには
アルゴリズムの
1. 何をしたいか?
求めるものは何か?
2. どのような仮定の下で考えるか?
どのような情報が与えられるのか?
設計
例:n>0 なのか? n 0 なのか?
3. 欠落している情報はないか?
4. 問題の解をどのように認識するか?
5. 最適な制御構造・データ構造は何か?
1
最適な制御構造・データ構造
2
アルゴリズムの設計法
1. 制御構造
1)while? do-while? for?
2)if は適切?
2. データ構造
1. トップダウン設計法 (Top down design)
1)全体の流れを考え,より小さな部分に分
割。
2)(必要なら)各部分をより小さな部分に
分割。
3)[繰り返し]
1)配列
2)リスト
3)キュー
4)スタック
5)木
4)各部分を設計
5)全体を纏める。
3
アルゴリズムの設計法
2. 分 割 統 治 法 ( D i v i d e a n d c o n q u e r
Method)
1)Top down 法の一種。
2)分割された各部分が元の問題と同型
(ただし,データの大きさなどが違って
いる)
3)代表例:再帰アルゴリズム
5
4
ダウンロード

アルゴリズムの 設計