KS情報科学専門書<br> 問題解決力を鍛える!アルゴリズムとデータ構造

個数:1
紙書籍版価格
¥3,300
  • 電子書籍
  • Reader

KS情報科学専門書
問題解決力を鍛える!アルゴリズムとデータ構造

  • ISBN:9784065128442

ファイル: /

内容説明

★この本を買わずして何を買う!!★

競技プログラミング経験が豊富な著者が、「アルゴリズムを自分の道具としたい」という読者に向けて執筆。入門書を標榜しながら、AtCoderの例題、C++のコードが充実。入門書であり実践書でもある、生涯役立つテキストを目指した。

【推薦の言葉】
プログラムが「書ける」ことと、効率の良い結果を得ることには大分ギャップがある。本書は、どのようにすれば効率のよい結果が得られるか? すなわちどのようなアルゴリズムを採用すればよいか? という点に対して、幅広くかつ明快に解説している。
また本書は、アルゴリズム初心者に対して、アルゴリズムへの興味を惹かれるように記述されている。アルゴリズム上級者への初めの一歩には最適であろう。
――河原林健一(国立情報学研究所副所長)

【全体を通して、アルゴリズムの設計技法を重視した構成】
まず、1、2章でアルゴリズムと計算量について概観します。そして、3~7章が、早くも本書のメインパートといえる部分であり、「アルゴリズムの設計技法」について詳しく解説します。これらの設計技法に関する話題は、多くの書籍では、最後の方で簡単に説明しています。しかし本書は、現実世界の問題を解決するための実践的なアルゴリズム設計技法の鍛錬を目指しています。そこで、アルゴリズム設計技法について前半で詳しく解説する構成としました。そして、これらの設計技法が後半の章でも随所に使われていくことを示していきます。

その後、8~11章では、設計したアルゴリズムを効果的に実現するうえで重要となるデータ構造を解説します。データ構造について学ぶことで、アルゴリズムの計算量を改善したり、また、C++やPythonなどで提供されている標準ライブラリの仕組みを理解して、それらを有効に活用したりすることができるようになります。

そしていったん、12章でソートアルゴリズムについての話題を挟んだ後に、13~16章でグラフアルゴリズムについて解説します。グラフは、非常に強力な数理科学的ツールです。多くの問題は、グラフに関する問題として定式化することで、見通しよく扱うことができるようになります。また、グラフアルゴリズムを設計するとき、3~7章で学ぶ設計技法や、8~11章で学ぶデータ構造が随所で活躍します。

最後に、17章で PとNPに関する話題を解説し、世の中には「効率的に解くアルゴリズムを設計することができそうにない難問」が多数あることを見ます。18章で、これらの難問に取り組むための方法論をまとめます。ここでも、動的計画法 (5章) や貪欲法 (7章) といった設計技法が活躍します。

目次

1章 アルゴリズムとは
2章 計算量とオーダー記法
3章 設計技法(1):全探索
4章 設計技法(2):再帰と分割統治法
5章 設計技法(3):動的計画法
6章 設計技法(4):二分探索法
7章 設計技法(5):貪欲法
8章 データ構造(1):配列、連結リスト、ハッシュテーブル
9章 データ構造(2):スタックとキュー
10章 データ構造(3):グラフと木
11章 データ構造(4):Union-Find
12章 ソート
13章 グラフ(1):グラフ探索
14章 グラフ(2):最短路問題
15章 グラフ(3):最小全域木問題
16章 グラフ(4):ネットワークフロー
17章 PとNP
18章 難問対策

感想・レビュー

※以下の感想・レビューは、株式会社ブックウォーカーの提供する「読書メーター」によるものです。

masabi

8
【概要】アルゴリズムの設計・思考法の観点から設計技法・データ構造・グラフを取り上げる。【感想】一応の一読。次は本書で紹介されている通りC++の基礎を学んでから演習問題に取り組む。2022/11/16

mft

6
普通の本は具体的な問題があってそれを解くアルゴリズムを解説していくように思うが、この本はまず一般論を説明してから具体的な話に進む章立てになっている。初心者を抜けて一回整理してみたい、ぐらいの人が読む想定なのかな2021/04/29

ますみ

3
読み終えた。16章のネットワークフローの演習が自分には難しく感じた。練習が足りない部分なんだと思う。全体的に読みやすいのとどう使うか? 考えるか? に焦点が当たっていて良い。最適化問題を判定問題と二分探索にするアプローチは読めてよかった。貪欲法が正当性を持つ証明を出せるようになるのはかなり練習が必要そう。2020/11/23

mopinfish

2
アルゴリズムが問題を解決する手順が図解で分かりやすく説明されていて大変読みやすかった。C言語による実際のコードも行を追いながら解説してくれるので理解が助かる。各種アルゴリズムの正当性を証明する件だけは数式もたくさん登場し理解するのがやや難しかったが一度読み通す分には流し読みする感じで問題なく通して読める。アルゴリズム全般を外観するのに最適な入門書だと思いました。章ごとに再読してさらに理解を深めたい。2023/03/21

しき

2
基礎から解説してあってわかりやすいです。グラフ問題の解説がとくにすっきりしてて良かったです。アルゴリズムとデータ構造は同じようなものだと思ってたけど、この本を読んで両者がどういう関係なのか理解できた。2022/10/20

外部のウェブサイトに移動します

よろしければ下記URLをクリックしてください。

https://bookmeter.com/books/16483035
  • ご注意事項