アルゴリズムを鍛えたい

プログラミング

コードがスラスラ書けなかったり、ロジックがうまくいかず想定外の挙動をしたり。

どうにかここらへんをスラスラっと書けてかつ、ロジックも想定内の動作にしたい。

という思いがあったので、さてどうしたものやら、と考えて考えて行き着いたのが、

「アルゴリズム能力が足りてないからでは?」

という結論に至った。

論理的思考とプログラミング思考は別物で、論理的思考を鍛えればいけるのでは?とも思ったが、

どうにもパズル的な能力も、プログラミングには必要かなと思っている。

数学やればいけるかと思うが、「数学は暗記だ!」という人もいるので、自分としては不可思議な気持ちでいる。

だがアルゴリズムを鍛えるとなるとどうすればよいのだ?と思って検索かけたら、「競技プログラミング」が出てきた。

自分が求めてるのは多分これだろうなぁ、と思ってサイトを覗いたがいかんせんレベルが高い(という高そう)

c++ での問題が一番多いし、解説も c++ が中心なので、時間や余裕があればやるのだが、まだ自分は Swift という言語もろくに扱いきれていない。

なるべく Swift でアルゴリズム鍛えてなぁ、と思ってさらに検索をかけたら、

Cordwars https://www.codewars.com/

Exercism https://exercism.io/

leetcode https://leetcode.com/

とか出てきた。

サイト覗いたらこっちのほうが敷居低そうで、やれそうと思って「CordWars」と「Exercism」をいま一番レベルの低いところからやっている。効果はわからないが。

ちなめに leetcode は有名な外資系(外国)のIT会社で出題されていた問題とかもあるようだ。難しそうだった。

世界の「GAFA(M)」で出されている問題なので、これ出来れば夢のGAFAの会社に入れてしまうのでは?と思わなくもない。(目指してないけど)

取り敢えず CordWars を主としてるので、仕事でも一定の成果が出ればいいなと思ってる次第。

継続しないと成果も見えないから、続けて行くしか無いなぁ。。

レベル上がって成果を感じたらまた所感とか書いてみる。ではグッバイ。

タイトルとURLをコピーしました