. アルゴリズムの効率とは ........ . . 山崎浩一 経営学部 経営学科 プログラム言語特論, Summer 2009 . アルゴリズムの効率とは ........ アルゴリズムとは? の復讐 アルゴリズムとは? の復讐 アルゴリズム (algorithm) 「計算のためのプロセスまたは規則」 (The Concise Oxford Dictionary (1976 年版)) 20 世紀になるまでは厳密に定義されていなかった Turing 機械 (やそれと等価な概念) により定義される (チャーチの提唱) アルゴリズム (手順) 次第で効率が大きく変わり得る . . .. . . アルゴリズムの効率 . アルゴリズムの効率とは ........ アルゴリズムの効率とは アルゴリズムの効率とは 「効率の良いアルゴリズム」という言い方をする → 「無駄の少ない処理の手順」 → 「資源を無駄に使わない処理の手順」 (コンピュータの) 資源とは、 メモリ (空間的) 処理時間 (時間的) . アルゴリズムの効率とは ........ アルゴリズムの効率とは 2 の冪上計算の (具体) 例 . 例: 28 を計算する 2 つのアルゴリズム .. アルゴリズム 1: .1. 1 に 2 を 8 回かける . . ... ... . . .. .. 1 2 × 2 をする (結果は 4) [つまり 22 の計算] 2 4 × 4 をする (結果は 16) [つまり (22 )2 の計算] 3 16 × 16 をする (結果は 256) [つまり ((22 )2 )2 の計算] 評価方法: 掛け算の回数で評価 (少ない方が良い) (2 × 2 も 16 × 16 も同じ 1 回と数えるのは不公平では?) 同じ計算をする手間を省いている . . . アルゴリズム 2: . アルゴリズムの効率とは ........ アルゴリズムの効率とは 2 の冪上計算の (一般化した) 例 . k 例: 22 を計算する 2 つのアルゴリズム .. アルゴリズム 1: .. 1 に 2 を 2k 回かける 1 . . アルゴリズム 2: 1 1 回目:2 × 2 をする (結果は 4) [21 × 21 の計算] 2 2 回目:4 × 4 をする (結果は 16) [22 × 22 の計算] 3 3 回目:16 × 16 をする (結果は 256) [24 × 24 の計算] 4 4 回目:256 × 256 をする (結果は 65536) [28 × 28 の計算] 5 同様に繰り返して 6 x 回目:2y × 2y をする (結果は 22 ) [2y × 2y = 22 の計算] k k . . ... ... ... ... ... . . .. .. . アルゴリズムの効率とは ........ 効率のはかり方 2 の冪上計算の (一般化した) 例の効率 . k 例: 22 を計算する 2 つのアルゴリズム .. アルゴリズム 2: .. 1回目:2 × 2 をする (結果は 4) [21 × 21 の計算] 1 .2. 2回目:4 × 4 をする (結果は 16) [22 × 22 の計算] . . ... ... ... . . .. .. . 3 3回目:16 × 16 をする (結果は 256) [24 × 24 の計算] 4 4回目:256 × 256 をする (結果は 65536) [28 × 28 の計算] 5 同様に繰り返して 6 x 回目:2y × 2y をする (結果は 22 ) [2y × 2y = 22 の計算] k k . . . 問題 . .. .1. x, y , k にはどんな関係があるか? .2. 22k を計算するために必要な回数を f (k ) とするとき、 k の関数 f (k ) を数式で表現せよ . .. . . . . . . アルゴリズムの効率とは ........ 効率のはかり方 関数としての表現 ある人の仕事の効率を測るには? 一般に、作業量が多いと時間がかかる どの程度の作業量ならば、どの程度の作業時間がかかるかを知 りたくなる アルゴリズムの効率を測るには? アルゴリズムの世界での作業時間とは? → 計算の処理時間 アルゴリズムの世界での作業量とは? → 入力データのサイズ アルゴリズムの効率を評価するために、入力データのサイズと 処理時間の関係を、関数として表現する . アルゴリズムの効率とは ........ 効率のはかり方 確認問題 . 問題 .. .1. A6 サイズのメモ書きが 1 枚ある .2. 最大 A3 までコピーできるコピー機とはさみがある 3 用紙のサイズに関係なく 1 回のコピーに 10 円かかる 4 用紙のサイズの関係は、 A6 → 2 倍 → A5 → 2 倍 → A4 → 2 倍 → A3 ... ... . . .. .. . 5 そのメモ書きを、オリジナルを含めて 16 枚用意したい 6 いくら必要か? 7 コピーの劣化は気にしなくてよい . . . . ... ... . . アルゴリズムの効率とは ........ コラム n vs. 2n 豊臣秀吉の家臣で曾呂利新左衛門(そろりしんざえもん)とい う人がいた ある日秀吉から「望む褒美をやろう」と言われ、「1 日目は米 一粒、 2 日目は倍の米二粒、 3 日目はその倍の米四粒、次は八 粒というように倍倍で米粒を頂いていき、 50 日分を頂けれ ば」と答えた 50 日目には1 億俵以上になってしまう n が大きくなると 2n は爆発的にとても大きくなってしまう . .
© Copyright 2024 Paperzz