コンピュータにとってのアルゴリズムとは何か
あまり長ったらしい文章は書きたくない。だから端的に言おう。
コンピュータにとってのアルゴリズムとは何か。
コンピュータにできることは3つしかない。それはこれだ!
・データをメモリから読みだしてくること
・2つのデータを入力して計算結果を出力すること
・データをメモリに書き出すこと
※ただし計算には比較演算(CMP)、そして分岐演算(JUMP)含む
そしてコンピュータは同時に複数のことはできない。
だから何かの処理をコンピュータにされるとき、上記3つの処理に全て分解して
記述しなければならない。
まさしくアルゴリズムとは何かとはこのことである。
そして上記3つのことから導かれる処理の構造化が制御構造を生むことになる。
順次・分岐・繰り返しで全ての処理が記述できるという構造化定理の誕生だ。
そして次に重要なのはデータの構造化。
これには色々なバリエーションがある。スタック・キュー・配列・リスト・
ハッシュテーブル、ツリー、etc。これら先人が考えたデータ構造とアルゴリズムは
とても魅力的だ。セクスィなのだ。
全ての処理をコンピュータが処理できるアルゴリズムに分解すること。
これがまさしく人間の知恵である。人間素晴らしい。万歳❣☺
そして我々は次なるコンピュータのステップを踏もうとしている。
いやもうすでにステップは進んでいる。確率を取り入れた量子アルゴリズム。
アルゴリズムとは何か。その定義は難しい。
あまり長ったらしい文章は書きたくない。だから端的に言おう。
コンピュータにとってのアルゴリズムとは何か。
コンピュータにできることは3つしかない。それはこれだ!
・データをメモリから読みだしてくること
・2つのデータを入力して計算結果を出力すること
・データをメモリに書き出すこと
※ただし計算には比較演算(CMP)、そして分岐演算(JUMP)含む
そしてコンピュータは同時に複数のことはできない。
だから何かの処理をコンピュータにされるとき、上記3つの処理に全て分解して
記述しなければならない。
まさしくアルゴリズムとは何かとはこのことである。
そして上記3つのことから導かれる処理の構造化が制御構造を生むことになる。
順次・分岐・繰り返しで全ての処理が記述できるという構造化定理の誕生だ。
そして次に重要なのはデータの構造化。
これには色々なバリエーションがある。スタック・キュー・配列・リスト・
ハッシュテーブル、ツリー、etc。これら先人が考えたデータ構造とアルゴリズムは
とても魅力的だ。セクスィなのだ。
全ての処理をコンピュータが処理できるアルゴリズムに分解すること。
これがまさしく人間の知恵である。人間素晴らしい。万歳❣☺
そして我々は次なるコンピュータのステップを踏もうとしている。
いやもうすでにステップは進んでいる。確率を取り入れた量子アルゴリズム。
アルゴリズムとは何か。その定義は難しい。