stegral の雑記

編入と勉強と映画

プログラミングを学ぶ人向けに情報科学を学ぶために私がオススメするC言語の書籍一覧【2018年版】

初心者どころか、まさに初心者向け

大体の入門の本は、もっとベースの知識を元に解説されています.
自分から勉強できるくらいの知識を持つまでの勉強フローを私の経験談から示します.


てんぷれ~と
【難易度】★が多いほど難しい~
【期間】読むのにどれくらいかかるのか
【from to】どこから読んでどこで屈折するか
【感想】私見をダラダラ述べる


初心者未満

C言語を学ぶすべての(日本語が読める)人に推薦する!

苦しんで覚えるC言語

苦しんで覚えるC言語

Webサイトもあります.私はこれで学習し,後から本を買って読みました.
9cguide.appspot.com

改めてサイトを訪問すると,見た目もガラッと変わってしまって,とても見やすかった!

【難易度】★
【期間】1ヶ月以上かかりました
【from to】1ページ目から読んで,動的配列あたりで別な本に移行しましょう.
【感想】内容は,苦しむどころか非常にわかりやすく脳トレのように楽しくスイスイと、「学習意欲」が沸いてくるような本です。
近年でありがちな「誰でもわかる」みたいな謳い文句とは異なって「苦しんで」という言葉に負けず勉強しよう!と立ち向かった人だけが得られる、丁寧でわかりやすい解説は2018年現在でも私の基礎を支えています。


2冊目にオススメ3選

アルゴリズム図鑑 絵で見てわかる26のアルゴリズム

アルゴリズム図鑑 絵で見てわかる26のアルゴリズム

一気に3冊を紹介してしまいました!
それくらいオススメです...すみません...

タイトル 難易度 期間 from to 備考欄
アルゴリズム図鑑 さらっと読んで、その都度見直す 全部 アプリの有料版がオススメ!
新・明解C言語で学ぶアルゴリズムとデータ構造 中級編 ★★ 1ヶ月~3ヶ月 全部 今でも読み返したくなる良書
プログラミングコンテスト攻略のためのアルゴリズムとデータ構造 ★★★★ 期間なし 15章までと17章 問題を解きながら実装含めて学べる

2冊目以降は、完璧になろうとせずある程度をどんどん重ねていくことで1年,2年と続ければ優秀なC言語プログラマになれる!

これから下は、分岐が多数あると思いますが,学生向けとして大きく分けて3つ

  1. 別なプログラミング言語を使ってみる
  2. もっとC言語情報科学を学んでみる
  3. 実際に何か開発する。作成してみる

第2、第3のプログラミング言語

The Top Programming Languages 2018 - Google 検索
概ね、上位は

  1. JavaScript
  2. Java
  3. Python
  4. C++

あたりがランクイン!

情報系を学びたい学生に圧倒的オススメはPythonです!

近年、機械学習人工知能ディープラーニングに挑戦するならPythonは学ぶべきです!


機械学習×Pythonの絶対推薦図書

Pythonによる統計分析入門

Pythonによる統計分析入門

【難易度】★
【期間】2週間程度
【from to】第1章から第7章まで,第8章は説明が足り無すぎると感じました
【感想】全体的に,非常に簡潔に書かれていてわかり易かったです.細かい数学的な部分はほとんど無いので統計を学ぶ前,学んだ後に問わずPython入門者からオススメできます.
Pythonではじめる機械学習 ―scikit-learnで学ぶ特徴量エンジニアリングと機械学習の基礎

Pythonではじめる機械学習 ―scikit-learnで学ぶ特徴量エンジニアリングと機械学習の基礎

【難易度】★★★
【期間】読むという本ではない
【from to】クックブックというかレシピ本みたいな本。全部目を通して、一気に学ぶ
【感想】私もまだ半分程度しか読んでませんが,全体的にストーリー立てて教科書どおりのPythonを使った機械学習本になります.特別,数学的な要素は多くありませんが,機械学習の本質については本書だけでは足りません.実装的な部分で御活用下さい!【難易度】★★
【期間】1ヶ月以上
【from to】全体
【感想】この本はPythonを使って実際にDeepLearningを実装します.Pythonのプログラミングと機械学習のDeepLearningについてを並行的に学びましたが十分読めました!数学的な部分に関してはかなり省いているので詳しく学ぶなら別な本も必要です.
[第2版]Python 機械学習プログラミング 達人データサイエンティストによる理論と実践 (impress top gear)

[第2版]Python 機械学習プログラミング 達人データサイエンティストによる理論と実践 (impress top gear)

【難易度】★★
【期間】読むという感じの本ではない
【from to】全体
【感想】Pythonではじめる機械学習と似ています.どっちか読んでいれば十分だと思いますし,そちらの方をお勧めします.トピック数が豊富で(ページ量からもわかりますが)非常に読み応えがありますね!


さらにもっとC言語

[改訂新版]C言語による標準アルゴリズム事典 (Software Technology)

[改訂新版]C言語による標準アルゴリズム事典 (Software Technology)

【難易度】★~★★★
【from to】あいうえお順でいろんなアルゴリズムが載っています
【感想】眺めるだけでも面白いですし,気になったアルゴリズムを検索しどのように実装されているのか読み解くのは非常に勉強になります!図書館などにあったら一読してほしいですが,購入の優先度は低めかなと感じます.
わかりやすい数値計算入門

わかりやすい数値計算入門

【難易度】★★★
【期間】3ヶ月
【from to】全体
【感想】プログラミングというより数値計算のための理論など。ですが,数値計算とシミュレーションとあわせて読んでもらいたい一冊!
Cによる数値計算とシミュレーション

Cによる数値計算とシミュレーション

【難易度】★★★
【期間】3ヶ月
【from to】全体
【感想】全体的に,とんでもなく難解という点はありませんでした.数学の知識が必要になるので合わせて前のわかりやすい数値計算等も読むべきですが,圧倒的に科学的なプログラミングを学べる本になります!

また、この2冊は新品でも3000円未満で購入することができ,(邪道かもしれませんが)わかりやすい数値計算入門は中古で非常に低価格で読むことが出来ます!>>!学生必見!<<