情報1 2006.11.13 第8回:作品づくり その2 1 レポート提出について • 前回の授業を欠席した人,まだレポート課題を提出していな い人は提出してください – – – – – – 籠島 山口 志賀 栗原 矢野 小出 • 注意 – データで持参した人はMoodleに提出すること – 印刷して持ってきた人は前に提出すること – 名前が書いてあるか確認すること! 2 レポート課題 (1) • 「挿入ソート」まで終わったペア – 課題1: • – 課題2: • – アルゴリズムの授業で何が分かったかを説明して,感想を述べる 「最小値検索法」まで終わったペア – 課題1: • – – N枚のカードを並び替えるのに必要な,比較回数を計算で求めなさい 課題2: • 手作業によるカードの並び替え,フローチャートの作成が実装に役立ったか? 課題3: • • 手作業によるカードの並び替え,フローチャートの作成が実装に役立ったか? 課題3: • • 挿入ソートと最小値検索法のそれぞれの方法について,N枚のカードを並び替えるのに必要な,比較回数を 計算で求め,その回数の比較を行う アルゴリズムの授業で何が分かったかを説明して,感想を述べる 何も終わらなかった(ToT)ペア – 課題1: • – 実装をふり返り,何が一番難しかったか説明する 課題2: • アルゴリズムの授業で何が分かったかを説明して,感想を述べる 3 レポート課題 (2) • 締め切り – 11月6日の授業開始時 • 形式 – ワード等で作成するのが望ましい(手書きでもい いが,読みやすいようにまとめること) – A4の用紙を利用すること – 課題1~3を分けて書くこと – 2枚以上 4 最小値検索法の比較回数 • カードの枚数と比較回数 – – – – – カードが1枚の場合→0回 カードが2枚の場合→1回 カードが3枚の場合→2+1回 カードが4枚の場合→3+2+1回 カードが5枚の場合→4+3+2+1回 • カードの枚数がN枚の場合 – (N-1)+(N-2)+(N-3)+…+1=N×(N-1)/2 – 比較回数はNの二乗に比例する 2 • 計算結果は(N -N)/2であるが,Nが十分に大きければ,N/2は無 視できる • カードの枚数が二倍になると,時間は4倍かかる 5 挿入ソートの比較回数 • カードの枚数と比較回数 – – – – カードが1枚の場合→多くても少なくても0回 カードが2枚の場合→多くても少なくても1回 カードが3枚の場合→多くて1+2回,少なくて2回 カードが4枚の場合→多くて1+2+3回,少なくて3回 – カードがランダムに並んでいれば,比較回数の平均は処理済束のカードの 枚数の半分になる • 挿入すべきカードが先頭にあれば,毎回の比較は1回で済む • 挿入すべきカードが末尾の場合,毎回の比較は処理済のカード枚数 • カードの枚数がN枚の場合 – (N-1)+(N-2)+(N-3)+…+1=N×(N-1)/4 – 比較回数はNの二乗に比例する 2 • 計算結果は(N -N)/4であるが,Nが十分に大きければ,N/4は無視できる • カードの枚数が二倍になると,時間は4倍かかる • 比較回数からすると,最小値検索法の約2倍高速である 6 色々なソート • 簡単だけど,低速 – バブルソート 2 • 動作時間:N – 選択ソート(最小値検索法のこと) 2 • 動作時間:N – 挿入ソート 2 • 動作時間:N • 複雑だけど,高速 – マージソート 2 • 動作時間:N×logN • 例:マージソートで40秒なら,挿入ソートは約28時間かかる – シェルソート 2 • 動作時間: N×logN • 発明した人/年:Donald L.Shell/1959年 – クイックソート • 動作時間:N×logN • 発明した人/年:C.A.R.Hoare/1962年 7 グラフ化 40 35 比較回数 30 N Nの2乗 logN 1 25 20 15 10 5 0 1 2 3 4 5 6 7 8 9 10 11 12 13 項目数(N) 8 作品づくりについて(1) • 今回は二人組のペアで挑戦する – これまでのペアでもよいし,変更してもよい – 役割分担をうまくしましょう • 完全分業:グラフィックデザイナーとプログラマ • 協調作業:ペアプログラミング • 残り授業数は今回を含めて,3回 – 前回欠席した人 • 企画を考えて,計画を立てましょう • 企画と計画のレビューが終わったら,製作にはいります – それ以外の人 • 作業を進めましょう 9 作品づくりについて(2) • 前半の講義をうまく活かしましょう – 状態遷移図を使った設計を行う • ゲーム全体の状態遷移 • あるオブジェクトの状態遷移 – 複数のオブジェクトを入れ物に入れて,検索や並 び替えを行う • 応用例:時刻表検索システム • 応用例:ハイスコアの保存 – 上記を取り入れた場合,作品の評価に加点をし ようと思います 10 今日の作業(前回欠席した人) • Step1. ペアの決定 – ペアを探しましょう – ペアが決定したら,企画 & 作業計画シートを前に取りに来てください • Step2. 企画と作業計画のレビュー – シートが埋まったら,手を挙げて教えてください – レビューをします • Step3. 作業時間 – 計画に従って作業を進めてください – Squeakは最終作品用Squeakを使ってください • Step4. 日誌を書いて終了 11 今日の作業(前回出席した人) • Step1. 作業時間 – 計画に従って作業を進めてください – Squeakは最終作品用Squeakを使ってください • Step2. 日誌を書いて終了 12 今日の授業はおしまい お疲れ様でした 13
© Copyright 2025 ExpyDoc