アルゴリズムって今までも聞いたことあるけど、なんとなく耳にしていたぐらいでちゃんと認識はしていなかったように思えます。
なので、ここでもしっかりと学習していきますね!
目次
アルゴリズムとは
問題を解決するために使われる一連のルールや指示のこと。
例えば⋯ルート検索
マップAppとかだと、ルート検索した時に一番短い道順を教えてくれる
例えば⋯渋滞回避
- 距離と平均速度を比べる
- 現在の交通状況を比べる
- 移動時間が一番短い道順を選ぶ
実は…すでにアルゴリズムに触れていた!?
今までやってきた、
- if
- for
- while
などを使ってやってきたことがそのままアルゴリズムでした。
if isBlockedRight { // 右に壁があれば
moveForward() // まっすぐ進む
} else { // 右に壁がなくなったら
turnRigth() // 右に方向転換
moveForward() まっすぐ進む
}
目的を果たすために色々やってきたことがアルゴリズムなのです。
わかりやすい手順
まずは疑似コードで書いてどのように進むか考えを整理するのが良いです。
疑似コード
壁を回って進む {
もし右が行き止まりならば {
進む
} そうでなければ {
右を向く
進む
}
}
前述のコードをわかりやすく日本語で表した感じです。
いきなりwhileとかifで書いてもいいけど、考えを整理するために日本語で書いていく、という手法もありです。
WordPress構築でいう、最初はhtmlで静的コーディング、その後に動的にするためにwpタグを入れる、みたいな感じですね。