C によるアルゴリズムとデータ構造 (改訂 2 版)(シーニヨルアルゴリズムトデータコウゾウカイテイニハン)
- 著者:
- 茨木 俊秀(イバラキ トシヒデ)
- 出版社:
- オーム社
- 出版日:
- 2019年05月31日頃
- ISBN:
- 9784274223914
- 在庫:
- 在庫あり
なぜ注目されているか
書籍紹介
良いプログラムを書くための必須知識をまとめたテキストであり、五輪の書。
本書は、長年にわたって数多くの優秀なシステムエンジニア、プログラマーに愛読されてきた、良いプログラムを書くための必須知識をまとめたテキストです。
うまくつくられたプログラムは、理解しやすく実行効率も高いものですが、一方、そうでないものは解読も困難なうえに、やたら時間や領域をくいます。さらに、そのようなまずいプログラムには、えてしてミスや内容的な誤りも隠されているものです。
本書は、新たなアルゴリズムで新たなプログラミングを行うために覚えておかなくてはいけない必須知識、そしてアルゴリズムの設計、実現における基礎を、実用上の価値に重点を置いてまとめています。
今回の改訂においては、多くの読者の声をよく参考にして、よりわかりやすく、簡明になるよう見直しを行ったほか、接尾辞木について新たな解説を加えています。
システムエンジニア、プログラマーとして活躍される方の五輪書です。
技書の森解説
アルゴリズムの教科書は数あれど、 C 言語で実装しながら原理を身体に落とし込む構成を長年貫いているのが本書です。著者の茨木俊秀氏は組合せ最適化の研究者として知られ、大学の情報工学科で長く使われてきた実績がそのまま本書の骨格になっています。スタック・キュー・リストといった基本的なデータ構造から始まり、ソート、探索、グラフ、文字列照合まで、計算機科学の核となる話題を一通り扱います。
特徴は、アルゴリズムを「動く疑似コード」ではなく「コンパイルして試せる C のコード」で示している点です。ポインタによるリスト操作や再帰の挙動を紙上で追いかけるだけでなく、手元でステップ実行して確認できるため、計算量の議論が抽象論で終わりません。改訂 2 版では例題の見直しが行われ、初版で指摘されていた説明の飛躍がいくらか平易になっています。
一方、数学的な記法や計算量解析に紙幅を割く学術寄りの書き方のため、プログラミング自体がまだ不安定な段階で読むと壁を感じることがあります。 C の基本文法とポインタの扱いを一冊分は経験してから取り組むと、データ構造が「なぜその形なのか」を計算量の裏付きで語れるようになり、言語を変えても応用が利く地力になります。
言及 Qiita 記事 (7 件)
プログラマーのための原則(2 万字)
♡ 1330プログラミング, 教育, 原則, 新人プログラマ応援【読書の夏?】各分野のおすすめ技術書を75冊まとめてみた
♡ 99AWS, Security, 初心者, 技術書, AI実務未経験者が今まで独学に使ってきた技術書を公開していくよ
♡ 50技術書, 未経験エンジニア, 独学ブックマークしてあった、データサイエンスなどの記事約1年分のリンク集(2018年5月ごろまで)
♡ 39Python, 機械学習, AI, 分析, データサイエンスSOFTBANK の Delphi 関連書籍を読んでみる
♡ 7Delphi, Pascal, Borland, embarcadero, objectpascal「アルゴリズムとデータ構造」問題
♡ 3書籍紹介サイエンス社の Information & Computing シリーズから Pascal 関連の書籍を読んでみる
♡ 1Delphi, Pascal, TurboPascal
この本に興味がある方におすすめ
この本に関連
関連記事
アルゴリズム本ガイド - 競プロだけじゃない、実務に活きる選び方
アルゴリズム本の 3 タイプと、実務でアルゴリズムの知識が活きる場面、数学が苦手な人向けの学習ルートを紹介します。
機械学習・AI 本ガイド - エンジニアが読むべき技術書の選び方
機械学習の基礎から実践まで学べる技術書の選び方を紹介。「Python ではじめる機械学習」などのハンズオン本を軸に、数学が苦手な人向けの学習ルートと ML 本の賞味期限の見極め方を解説します。
手が止まったら本を開け - デバッグとしての読書
コードを書いていて手が止まる瞬間は、読書のチャンスです。実装に詰まったときに技術書を開く習慣が、問題解決力とコードの質を同時に高める理由を解説します。