paiza開発日誌paiza開発日誌IT/Webエンジニア向け総合求人・学習サービス「paiza」の開発者が、プログラミングやITエンジニアの転職などについて書いています。ITエンジニア向け総合求人・学習サービス「paiza」の開発者が、プログラミングやITエンジニアの転職などについて書いています。Ruotsalaこんにちは、谷口です。最近は機械学習、AI、ビッグデータといった分野が話題になっているので、ディープラーニング、ニューラルネットワーク、クラスタリングなどなどについて、よく勉強している!という方もいるかと思います。一方で、「プログラミングを始めたばかり」という方や、「プログラミング経験はあるけどアルゴリズムについてきちんと勉強したことはない」という方にとって、アルゴリズムの勉強って少しハードルが高いですよね。「いつか勉強しようかな~」と気になってはいるものの、プログラミング言語の書き方やフレームワークの使い方などを学ぶ方を優先してしまい、「いつか」が永遠に来ない...という方も多いのではないでしょうか。アルゴリズムについてよく知らないと複雑な処理をどう実装すべきかわからないどう実装すべきかわからないのでとりあえず力技で作る力技で作っているのでコードを改修するときに面倒なことになるできる人に見てもらうと「もっといいやり方があるよ」と言われるでも自分ではその「いいやり方」が思いつけないといったことが起こりがちです。そこで今回は、アルゴリズムの勉強に役立つサイトと書籍をレベルごとに紹介していきます。■入門者~初心者向け◆VisuAlgoアルゴリズムをビジュアルで見せてくれるサイトです。以前は英語版だけでしたが、現在は一部日本語にも対応しています!アルゴリズムは文章だけで解説されてもなかなか理解しづらいですが、こちらはこんな感じでコードとアニメーションを見ながら動きを確認できるので大変わかりやすいです。料金:ダウンロード無料(全項目の表示は+360円)【iOS版はこちら】【Android版はこちら】アルゴリズム図鑑は、アニメーションを使った解説を見ながらアルゴリズムを学べるアプリです。鍵つきのアルゴリズムは課金をしないと見ることができませんが、無料版でも多くのアルゴリズムを学ぶことができるので、初心者でも気軽に試すことができます。単行本(ソフトカバー)アルゴリズムの入門書として、プログラミング初心者にとってもかなりわかりやすい1冊だと思います。分岐や繰り返しなど、プログラミングの基礎的な処理についても解説がありますので、「まだプログラミングの基礎もおぼつかない...」という人でも無理なく読み進められる...と思います。単行本こちらもアルゴリズムを初心者向けにかみくだいて解説してくれている入門書です。フルカラーで図が多く、非エンジニア職の方でもとっつきやすいのではないかと思います。■中級者向け◆paizaの【毎週火曜・3週連続】24時間限定出題!テストケース開示問題paizaでは、12月12日(火)より、3週連続で毎週火曜に24時間限定スキルチェック問題を出題しています。次回は12月19日(火)です!普段のスキルチェック問題では、解説や解法のヒントなどは一切公開しておりませんが、こちらの24時間限定問題は、挑戦していただいた全ての方に解説とテストケースを配信いたします。動画でプログラミングが学べる「paizaラーニング」では、各言語のレッスンはもちろん、「アルゴリズム入門編」のレッスンも公開しています。動画レッスンを見て、その場でレッスン内容をプログラミングすることで理解を深め、その後に練習問題を解いて応用力をきたえることができます。「怪盗813からの挑戦状」は、怪盗813から出題される謎(※プログラミング問題)を解いてお宝を手に入れるキャンペーン問題です。プレゼントキャンペーン自体は終了しておりますが、現在も問題に挑戦して結果を見ることはできますので、ぜひ挑戦してみてください!「問題を見たけどよくわからない...」という方は、上でご紹介したpaizaラーニング「アルゴリズム入門編」で解き方の解説もしておりますのでぜひごらんください。◆一週間で身につくアルゴリズムとデータ構造sevendays-study.comアルゴリズムとデータ構造の学習サイトです。こちらはすでにプログラミングの基礎知識があることを前提とした内容になっているので、プログラミング入門レベルの学習が終わってから始めるのがよいかと思います。単行本アルゴリズムの基本は、基本的なソートやグラフに関するアルゴリズムが図と一般用語で解説されています。どこまでが初心者向けで、どこからが中級者向けの書籍かというと難しいところですが......。こちらは、多少数学的な知識などを前提とする箇所もあるため、プログラミング自体が初心者の人や数学が苦手な人にはちょっと難しいかもしれません。初・中級者向け?ぐらいの立ち位置かなと思います。入門書じゃ物足りない人や理系出身の人、既にある程度プログラミング経験がある人なら、この辺の書籍から始めてもよいかと思います。Kindle版スタンフォード大の数学者、クヌース先生の著書です。ぶ厚いですが、基本となるアルゴリズムについて考え方も含めて丁寧に説明されていて参考になりますし、実際にコーディングしながら読み進めていくとより理解が深まります。大型本アルゴリズムイントロダクションはアルゴリズムに関する書籍の定番中の定番というか、とにかく基本的なアルゴリズムに関する詳細が網羅されています。これがあればアルゴリズムのことは大体OKと言えばOKなのですが、プログラミング初心者が最初の一冊として挑戦するには難易度が高いしぶ厚いので、既にある程度プログラミングができる人、上記の「アルゴリズムの基本」が理解できて「もっと詳しく書かれた書籍がほしい!」という人によい書籍かなと思います。■まとめアルゴリズムの勉強は、一見ハードルが高そうに思われがちなので、プログラミングを始めたての人でも取っつきやすそうなものから、中・上級者まで対応できる書籍まで紹介してみました。アルゴリズムを知るとプログラミングについてより深く考えられるようになると思いますので、ぜひ勉強してみてください。paizaでは、未経験者でも動画を通してアルゴリズムやプログラミングを学べる「paizaラーニング「アルゴリズム入門編」」を公開しております。上でもご紹介した通り、12月19日(火)・12月26日(火)に、挑戦すると解説とテストケースが見られる24時間限定スキルチェック問題の出題を予定しております。火曜日にぜひ挑戦してみてください!「paizaラーニング」では、未経験者でもブラウザさえあれば、今すぐプログラミングの基礎が動画で学べるレッスンを多数公開しております。paizaでは、Webサービス開発企業などで求められるコーディング力や、テストケースを想定する力などが問われるプログラミングスキルチェック問題も提供しています。スキルチェックに挑戦した人は、その結果によってS・A・B・C・D・Eの6段階のランクを取得できます。必要なスキルランクを取得すれば、書類選考なしで企業の求人に応募することも可能です。「自分のプログラミングスキルを客観的に知りたい」「スキルを使って転職したい」という方は、ぜひチャレンジしてみてください。本日よりpaizaのスキルチェックでプログラミング問題に挑戦する...2022-07-26Python初心者が独学で中級者になれる6つのサイトと書籍こんにちは。プログラミング初心者でPythonに興味が...2022-03-23アルゴリズムとデータ構造を実践的に学べる動画講座が登場【Java】こんにちは。プログラミングをしていると「もっと効...2022-03-10初心者が学びやすいプログラミングの独学方法2つ。記事内に記載している情報は、記事公開時点でのものとなります。reserved.引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。