paiza開発日誌

IT/Webエンジニア向け総合求人・学習サービス「paiza」の開発者が、プログラミングやITエンジニアの転職などについて書いています。

プログラミング未経験でもOK!アルゴリズムを学べるサイトと本7選

f:id:paiza:20150928105425j:plain
f:id:paiza:20140916135428p:plainこんにちは、谷口です。

プログラミング初心者のみなさん、アルゴリズムの勉強はしたことがありますか?

プログラミングの勉強を始めたばかりの方、アルゴリズムについてしっかり勉強したことないという方にとって、アルゴリズムを「いつか勉強したほうがいいんだろうな」と思いつつも、なかなか手を出す機会がなく、いつのまにか後回しになっているものではないでしょうか。

プログラミングを始めたばかりの頃はそれほど気にならないかと思いますが、エンジニアになって実務に入ったり大規模な開発に取り組むようになったりしたときに、アルゴリズムの知識がないと

  • 複雑な処理をしたいときにどんな書き方をすべきかわからない
  • とりあえずわかる作り方を駆使して力技で作る
  • あとで機能や処理を追加したり改善したりするときが大変
  • できる人に「もっといいやり方があるよ」と言われるけど、そのいいやり方が自分で作っているときは思いつけない

といったことが起こりがちです。

そこで今回は、プログラミング初心者でもアルゴリズムの勉強に役立てられそうなサイトと書籍をご紹介します。

アルゴリズム図鑑

f:id:paiza:20171218134430j:plain

iOS版はこちら】【Android版はこちら

アニメーションを使った解説を見ながら、いろいろなアルゴリズムを学べるスマホアプリです。

f:id:paiza:20171218134540j:plain

無料版でも多くのアルゴリズムを学ぶことができるので、初心者でも気軽に試すことができます。(すべてを見るには課金が必要です)

paizaラーニングのアルゴリズム入門編

動画でプログラミングが学べる「paizaラーニング」では、各プログラミング言語ごとの講座だけでなく、アルゴリズム入門編も公開しています。

paizaラーニングの「アルゴリズム入門編」では、FizzBuzz、フィボナッチ数やハノイの塔といった、就職・転職時の技術面接でよく出るプログラミング問題のアルゴリズムを解説しています。

VisuAlgo

f:id:paiza:20171218134745j:plain

アルゴリズムをビジュアルで見せてくれるサイトです。アルゴリズムは文章の解説を読んでもなかなか理解しづらいですが、画像のような感じで、コードとアニメーションを見ながら動作のイメージが確認できます。

f:id:paiza:20171218134958j:plain

アルゴリズムを、はじめよう

アルゴリズムを、はじめよう

アルゴリズムを、はじめよう

  • 作者:伊藤 静香
  • 出版社/メーカー: インプレス
  • 発売日: 2012/05/14
  • メディア: 単行本(ソフトカバー)

分岐や繰り返しなど、プログラミングの基礎的な処理についても解説がありますので、「まだプログラミングの勉強も始めたばかり……」「難しいアルゴリズムはよくわからない」といった方でもわかりやすいかと思います。

「アルゴリズム」のキホン

こちらもアルゴリズムを初心者向けにかみくだいて解説してくれている入門書です。フルカラーで図が多く、エンジニア以外でプログラミングの勉強を始めたばかりの方でもとっつきやすいのではないかと思います。

アルゴリズムの基本

アルゴリズムの基本

アルゴリズムの基本

基本的なソートやグラフに関するアルゴリズムが解説されています。こちらは、多少数学的な知識などを前提とする箇所もあります。そのため、プログラミング自体が初心者の人や数学が苦手な人だと、最初にとりかかるのはやや難しいかもしれません。入門書では物足りない人や既にある程度プログラミング経験がある人、数学系の知識がある人におすすめです。

アルゴリズムイントロダクション 第3版 総合版

アルゴリズムイントロダクションはアルゴリズムに関する書籍の定番中の定番で、基本的なアルゴリズムに関する詳細が網羅して解説されています。

これさえあればアルゴリズムのことはほぼ網羅できるのですが、プログラミング初心者が最初の一冊として挑戦するにはかなり難易度も高いし量も多いので、既にある程度プログラミングができる人、前述の「アルゴリズムの基本」の内容が理解できて「もっと詳しく学びたい」という方によいかと思います。

まとめ

というわけで、プログラミング初心者がアルゴリズムを学ぶときに役立つサービスや書籍をご紹介しました。

アルゴリズムの知識は、プログラミング問題で、より効率のよい解き方を考えるときにも役立ちます。paizaのスキルチェック問題では、プログラミング問題を解くとS・A・B・C・D・Eの6段階のランクを取得できるので、「アルゴリズムについてもっと勉強したい」という方もぜひ挑戦してみてください。

paizaのスキルチェック





paizaラーニング」では、未経験者でもブラウザさえあれば、今すぐプログラミングの基礎が動画で学べるレッスンを多数公開しております。

そして、paizaでは、Webサービス開発企業などで求められるコーディング力や、テストケースを想定する力などが問われるプログラミングスキルチェック問題も提供しています。

スキルチェックに挑戦した人は、その結果によってS・A・B・C・D・Eの6段階のランクを取得できます。必要なスキルランクを取得すれば、書類選考なしで企業の求人に応募することも可能です。「自分のプログラミングスキルを客観的に知りたい」「スキルを使って転職したい」という方は、ぜひチャレンジしてみてください。





※このブログで紹介しているキャンペーンやイベント、およびサイト内の情報については、すべて記事公開時の情報となります。閲覧されたタイミングによっては状況が変わっている場合もございますのでご了承ください。

ITプログラマー・エンジニア転職・就活・学習のpaiza

プログラミング入門講座|paizaラーニング

PHP入門編Ruby入門編Python入門編Java入門編JavaScript入門編C言語入門編C#入門編アルゴリズム入門編AI機械学習入門

エンジニアのためのプログラミング転職サイト|paiza転職

プログラミング スキルチェックエンジニア求人一覧

未経験からエンジニアを目指す人の転職サイト|EN:TRY

プログラミング スキルチェックエンジニア未経験可求人一覧

エンジニアを目指す学生の就活サイト|paiza新卒

プログラミング スキルチェックエンジニア求人一覧

ブラウザを開くだけで エディタ、Webサーバ、DB等の開発環境が整う|PaizaCloud