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

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

大槻兼資 and 秋葉拓哉

講談社 / 2020-10-02

累計読者数18
平均ハイライト数 9.9件/人
推定読了時間 約9時間18分
star総合評価 42/100
start序盤集中型
check_circle推定完走率 10%

この本について

プログラムを書いていて、「これ本当に効率いいんだっけ…?」とか「結局どの考え方で整理すればいいのか分からない」と立ち止まることがよくあります。自分も計算量やグラフの話をなんとなく理解したつもりで進めて、後から処理が重くて詰まる…みたいなことを何度も繰り返してきました。 この本は、そういう曖昧さをほどくときにすごく助かりました。例えば、1 秒間に実際どれくらい計算できるのかをはっきり数字で示してくれるので、「このアルゴリズムなら現実的に動く」と自分で判断しやすくなります。また、Frog 問題をグラフとして捉え直す例のように、目の前の課題を別の構造に置き換えると見通しが一気に良くなる感覚がつかめます。さらに、push/pull のような緩和処理の視点が入ることで、同じアルゴリズムでも実装の重さや癖が変わることに気づけるのも大きかったです。単に「解き方を覚える」というより、「どう考えると整理できるのか」を実感しながら読めました。 深さ優先や幅優先をただの探索として終わらせず、「最小手順を知りたいときに BFS が効く」など、具体的な場面に落ちてくるのもありがたいポイントです。再帰から動的計画法へつながる道筋も丁寧で、仕組みが一本の線でつながる感じがあります。 アルゴリズムの概念が断片的で、自分の中で一本化できていない人に刺さると思います。自分と同じように、実務や学習のモヤモヤを整理したい人にはかなり使いやすい一冊でした。

この本に似ている本

すべて見る arrow_right_alt
書籍情報(出版社紹介・目次)expand_more

出版社による紹介

★この本を買わずして何を買う!!★ 競技プログラミング経験が豊富な著者が、「アルゴリズムを自分の道具としたい」という読者に向けて執筆。入門書を標榜しながら、AtCoderの例題、C++のコードが充実。入門書であり実践書でもある、生涯役立つテキストを目指した。 【推薦の言葉】 プログラムが「書ける」ことと、効率の良い結果を得ることには大分ギャップがある。本書は、どのようにすれば効率のよい結果が得られるか? すなわちどのようなアルゴリズムを採用すればよいか? という点に対して、幅広くかつ明快に解説している。 また本書は、アルゴリズム初心者に対して、アルゴリズムへの興味を惹かれるように記述されている。アルゴリズム上級者への初めの一歩には最適であろう。 ――河原林健一(国立情報学研究所副所長) 【全体を通して、アルゴリズムの設計技法を重視した構成】 まず、1、2章でアルゴリズムと計算量について概観します。そして、3~7章が、早くも本書のメインパートといえる部分であり、「アルゴリズムの設計技法」について詳しく解説します。これらの設計技法に関する話題は、多くの書籍では、最後の方で簡単に説明しています。しかし本書は、現実世界の問題を解決するための実践的なアルゴリズム設計技法の鍛錬を目指しています。そこで、アルゴリズム設計技法について前半で詳しく解説する構成としました。そして、これらの設計技法が後半の章でも随所に使われていくことを示していきます。 その後、8~11章では、設計したアルゴリズムを効果的に実現するうえで重要となるデータ構造を解説します。データ構造について学ぶことで、アルゴリズムの計算量を改善したり、また、C++やPythonなどで提供されている標準ライブラリの仕組みを理解して、それらを有効に活用したりすることができるようになります。 そしていったん、12章でソートアルゴリズムについての話題を挟んだ後に、13~16章でグラフアルゴリズムについて解説します。グラフは、非常に強力な数理科学的ツールです。多くの問題は、グラフに関する問題として定式化することで、見通しよく扱うことができるようになります。また、グラフアルゴリズムを設計するとき、3~7章で学ぶ設計技法や、8~11章で学ぶデータ構造が随所で活躍します。 最後に、17章で PとNPに関する話題を解説し、世の中には「効率的に解くアルゴリズムを設計することができそうにない難問」が多数あることを見ます。18章で、これらの難問に取り組むための方法論をまとめます。ここでも、動的計画法 (5章) や貪欲法 (7章) といった設計技法が活躍します。
library_books似た本をもっと見るmap書籍マップで探すroute読書パスガイドauto_awesomeAI診断で次の1冊を探す

読んだ内容を、もう忘れない。

BookNotion Zなら、Kindleのハイライトを自動で保存・整理。Notionにエクスポートして、いつでも振り返れます。

無料ではじめる

クレジットカード不要