ゲームプログラミングや競技プログラミングなど、処理速度や高度な問題解決が必要なジャンルで必須の知識となる「アルゴリズム・データ構造」。
最適なアルゴリズムやデータ構造を選択しないだけで、処理速度が10倍違う、なんてことはざら。
ハイパフォーマンス、リアルタイム性の求められるプログラミングに従事する方、処理速度への意識が高い方は、基本は一通り身につけておきましょう。
こちらでは「アルゴリズム・データ構造」の参考書を人気とともに紹介していきます。
発売したて・発売予定の新書をピックアップ
技術書は情報の鮮度も重要、人気ランキングの前に新しい書籍もチェックしておきましょう。
- 2022/06/24発売 「紙とえんぴつで学ぶアルゴリズムとフローチャート」
- 2022/07/19発売 「アルゴリズムとデータ構造の紹介: アルゴリズムの設計と分析」
- 2022/08/01発売 「アルゴリズム的思考力が身につく! プログラミングコンテストAtCoder入門」
- 2022/08/26発売 「独学コンピューターサイエンティスト Pythonで学ぶアルゴリズムとデータ構造」
- 2022/09/16発売 「競技プログラミングの鉄則 ~アルゴリズム力と思考力を高める77の技術~ (Compass Booksシリーズ)」
アルゴリズムの参考書「最新の人気ランキング 20冊」
今人気の「アルゴリズムの参考書」をランキングで一覧したのが以下です。
Rank | 製品 | 価格 |
---|---|---|
1 | ||
2 | ||
3 | ||
4 | ||
5 | ||
6 | Pythonからはじめるアルゴリズムトレード ―自動売買の基礎と機械学習の本格導入に向けたPythonプログラミング... 発売日 2022/04/08 Yves Hilpisch (オライリージャパン) 総合評価 | |
7 | ||
8 | ||
9 | ||
10 | プログラミングコンテストチャレンジブック [第2版] ~問題解決のアルゴリズム活用力とコーディングテクニックを鍛える~... 発売日 2012/01/28 秋葉 拓哉, 岩田 陽一, 北川 宜稔 (マイナビ出版) 総合評価 | |
11 | ||
12 | ||
13 | ||
14 | ||
15 | 動かして学ぶ量子コンピュータプログラミング ―シミュレータとサンプルコードで理解する基本アルゴリズム... 発売日 2020/08/27 Eric R. Johnston, Nic Harrigan, Mercedes Gimeno-Segovia (オライリージャパン) 総合評価 | |
16 | ||
17 | ||
18 | ||
19 | ||
20 | アルゴリズムイントロダクション 第3版 総合版:世界標準MIT教科書... 発売日 2018/01/09 Thomas H. Cormen, Clifford Stein, Ronald L. Rivest, Charles E. Leiserson (近代科学社) 総合評価 |
以降でおすすめ・注目の本をピックアップしていきます。
Kindle版のある本なら試し読みも可能。大概目次まで見れるので、概要もつかめるので、サンプル試読がおすすめです。
アルゴリズム・データ構造の本 人気の5冊
以下が「アルゴリズム・データ構造の本」人気の5冊詳細です。
Rank | 製品 | 価格 |
---|---|---|
1 | ||
2 | ||
3 | ||
4 | ||
5 |
問題解決のための「アルゴリズム×数学」が基礎からしっかり身につく本
アルゴリズムは、プログラミングを用いて問題を解決していくには欠かせない大切な道具です。一方、アルゴリズムを理解し、そして応用できるようになるためには、ある程度の数学的知識と数学的考察力も大切です。
本書では、中学レベル~大学教養レベルの数学的知識のうちアルゴリズム学習に必要なものについて扱うとともに、有名なアルゴリズムと典型的な数学的考察について丁寧に解説します。さらに、知識をしっかり身に付けるための例題・演習問題が全200問掲載されています。
■目次
第1章 アルゴリズムと数学の密接なかかわり
第2章 アルゴリズムのための数学の基本知識
第3章 基本的なアルゴリズム
第4章 発展的なアルゴリズム
第5章 問題解決のための数学的考察
最終確認問題
■本書で扱うアルゴリズム(「1.4節」より)
「全探索」「二分探索」「組合せの全探索」「素数判定法」「約数列挙」「ユークリッドの互除法」「モンテカルロ法」「選択ソート」「再帰関数」「分割統治法」「マージソート」「動的計画法」「配列の二分探索」「計算幾何」「累積和」「ニュートン法」「エラトステネスのふるい」「深さ優先探索」「幅優先探索」「繰り返し二乗法」「行列累乗の計算」「勾配降下法」「貪欲法」「A*」
■本書で扱う数学的知識と数学的考察(「1.5節」より)
「数の分類」「文字式」「2進法・3進法」「累乗・ルート」「ビット演算」「一次関数」「二次関数」「多項式関数」「指数関数」「対数関数」「ランダウのO記法」「素数」「最大公約数・最小公倍数」「数列の基本」「集合の基本」「必要条件と十分条件」「絶対誤差と相対誤差」「シグマ記号」「背理法」「積の法則」「階乗と二項係数」「確率と期待値」「期待値の線形性」「平均と標準偏差」「正規分布」「再帰的定義」「数列の漸化式」「平面ベクトル」「微分法」「積分法」「グラフ理論」「合同式」「モジュラ逆数」「行列」「三角関数」
「規則性を考える」「偶奇に着目する」「余事象を考える」「包除原理」「ギリギリを考える」「小問題に分解する」「足された回数を考える」「上界を考える」「次の手だけを考える」「誤差とオーバーフロー」「分配法則」「対称性を使う」「一般性を失わないことを使う」「条件の言い換え」「状態数を考える」
↓全て表示↑少なく表示
内容サンプル


目次
なぜアルゴリズムに数学が必要か ほか)
第2章 アルゴリズムのための数学の基本知識(数の分類・文字式・2進法
基本的な演算と記号 ほか)
第3章 基本的なアルゴリズム(素数判定法
ユークリッドの互除法 ほか)
第4章 発展的なアルゴリズム(コンピュータで図形問題をー計算幾何学
階差と累積和 ほか)
第5章 問題解決のための数学的考察(なぜ数学的考察が大切か
規則性を考える ほか)
最終確認問題
↓全て表示↑少なく表示
Users Voice
内容サンプル


著者略歴
2002年生まれ。2021年、筑波大学附属駒場高等学校を卒業し、現在東京大学に所属。競技プログラミングでは「E869120」として活躍。国内最大の競技プログラミングコンテストサイト「AtCoder」では最高ランクである赤色の称号を持ち、2020年までに国際情報オリンピック(IOI)で金メダルを三度獲得。また、アルゴリズム関連の研究でも日本学生科学賞・MATHコンなどで数々の実績を残している。その他、Qiitaで「レッドコーダーが教える、競プロ上達ガイドライン」記事などを執筆し、AtCoderでは毎日1つ新規問題を投稿する参加者数千人規模の企画「競プロ典型90問」を行うなど、アルゴリズムや競技プログラミングの普及活動にも取り組んでいる(本データはこの書籍が刊行された当時に掲載されていたものです)
↓全て表示↑少なく表示
アルゴリズム的思考力が身につく! プログラミングコンテストAtCoder入門
内容サンプル


目次
第2章 AtCoderの始め方
第3章 初級編~ここからスタート!~
第4章 中級編~典型を徹底マスター~
第5章 計算量
第6章 上級編~本格的なアルゴリズムの世界へ~
内容サンプル


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


目次
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章 難問対策
↓全て表示↑少なく表示
Users Voice
内容サンプル


著者略歴
↓全て表示↑少なく表示
見て試してわかる機械学習アルゴリズムの仕組み 機械学習図鑑
【本電子書籍は固定レイアウトのため7インチ以上の端末での利用を推奨しております。文字列のハイライトや検索、辞書の参照、引用などの機能が使用できません。ご購入前に、無料サンプルにてお手持ちの電子端末での表示状態をご確認の上、商品をお買い求めください】
機械学習アルゴリズムの違いが見てわかる!
「機械学習アルゴリズムは種類が多く、複雑で何をしているのかわかりにくい」と思ったこと、ありませんか?本書は、そのような機械学習アルゴリズムをオールカラーの図を用いて解説した機械学習の入門書です。
いままで複雑でわかりにくかった機械学習アルゴリズムを、図解によりわかりやすく解説しています。アルゴリズムごとに項目を立てているので、どのアルゴリズムがどのような仕組みで動いているのか比較をしやすくしています。
これから機械学習を勉強する方だけでなく、実際に機械学習を業務で使用している方にも新しい気付きを得られるのでお勧めの1冊です。
【本書の特徴】
・複雑な機械学習アルゴリズムの仕組みを1冊で学べる
・オールカラーの図をたくさん掲載
・各アルゴリズム毎にScikit-Learnを使用したコードを記載しているので、見るだけでなく試すこともできる
・仕組みだけでなく、実際の使い方や注意点もわかる
【本書で紹介するアルゴリズム】
01 線形回帰
02 正則化
03 ロジスティック回帰
04 サポートベクトルマシン
05 サポートベクトルマシン(カーネル法)
06 ナイーブベイズ
07 ランダムフォレスト
08 ニューラルネットワーク
09 kNN
10 PCA
11 LSA
12 NMF
13 LDA
14 k-means
15 混合ガウス
16 LLE
17 t-SNE
※本電子書籍は同名出版物を底本として作成しました。記載内容は印刷出版当時のものです。
※印刷出版再現のため電子書籍としては不要な情報を含んでいる場合があります。
※印刷出版とは異なる表記・表現の場合があります。予めご了承ください。
※プレビューにてお手持ちの電子端末での表示状態をご確認の上、商品をお買い求めください。
↓全て表示↑少なく表示
内容サンプル


目次
1.1 機械学習の概要
1.2 機械学習に必要なステップ
第2章 教師あり学習
01 線形回帰
02 正則化
03 ロジスティック回帰
04 サポートベクトルマシン
05 サポートベクトルマシン(カーネル法)
06 ナイーブベイズ
07 ランダムフォレスト
08 ニューラルネットワーク
09 kNN
第3章 教師なし学習
10 PCA
11 LSA
12 NMF
13 LDA
14 k-means法
15 混合ガウス分布
16 LLE
17 t-SNE
第4章 評価方法および各種データの扱い
4.1 評価方法
4.2 文書データの変換処理
4.3 画像データの変換処理
第5章 環境構築
5.1 Python3 のインストール
5.2 仮想環境
5.3 パッケージインストール
↓全て表示↑少なく表示
Users Voice
内容サンプル


著者略歴
2012年早稲田大学基幹理工学部卒業。2015年早稲田大学理工学術院基幹理工学研究科機械科学専攻修士課程修了。現在、株式会社リクルートコミュニケーションズテクニカルリード
杉山阿聖(スギヤマアセイ)
製造業系の情報子会社でiOSアプリ開発に3年、チャットボットの開発に2年従事。現在はSENSY株式会社でリサーチャーとして、機械学習を利用した業務を実施中
寺田学(テラダマナブ)
(株)CMSコミュニケーションズ代表取締役。一般社団法人PyCon JP代表理事。Plone Foundation Ambassador。一般社団法人Pythonエンジニア育成推進協会顧問理事。PSF(Python Software Foundation)Contributing members(本データはこの書籍が刊行された当時に掲載されていたものです)
↓全て表示↑少なく表示
Pythonではじめるアルゴリズム入門 伝統的なアルゴリズムで学ぶ定石と計算量
時代が変わっても
変わらないアルゴリズムから考え方を学ぼう
本書は、初心者にも扱いやすいプログラミング言語「Python」を使用して、
アルゴリズムの基礎・考え方を学ぶ入門書です。特にPythonがはじめてという方の
ために、第1章ではPythonの基本とデータ構造について解説しています。
本書では、プログラミング入門者が最低限知っておきたいアルゴリズムの
基礎と考え方に加えて、アルゴリズムの定石とその計算量について、具体的
なサンプルコードと動作イメージを交えて丁寧に解説していきます。
【こんな方におすすめ】
・アルゴリズムをゼロから学びたい
・Pythonでプログラミングを学んでいるけれど何から手をつけていいのかわからない
・過去にアルゴリズムを学ぼうと思ったけれどPythonの資料が少なかった
・基本情報技術者試験でPythonが取り入れられるので勉強したい
【扱うアルゴリズム】
FizzBuzz|フィボナッチ数列|線形探索|二分探索|幅優先探索|
深さ優先探索|番兵|8クイーン問題|n-クイーン問題|ハノイの塔|
ミニマックス法|選択ソート|挿入ソート|バブルソート|ヒープソート|
マージソート|クイックソート|最短経路問題|ベルマン・フォード法|
ダイクストラ法|A*アルゴリズム|文字列探索の力任せ法|Boyer-Moore法|
逆ポーランド記法|ユークリッドの互除法
※本電子書籍は同名出版物を底本として作成しました。記載内容は印刷出版当時のものです。
※印刷出版再現のため電子書籍としては不要な情報を含んでいる場合があります。
※印刷出版とは異なる表記・表現の場合があります。予めご了承ください。
※プレビューにてお手持ちの電子端末での表示状態をご確認の上、商品をお買い求めください。
↓全て表示↑少なく表示
内容サンプル


目次
1.1 プログラミング言語の選択
1.2 プログラミング言語Pythonの概要
1.3 四則演算と優先順位
1.4 変数と代入、リスト、タプル
1.5 文字と文字列
1.6 条件分岐と繰り返し
1.7 リスト内包表記
1.8 関数とクラス
第2章 基本的なプログラムを作ってみる
2.1 フローチャートを描く
2.2 FizzBuzzを実装する
2.3 自動販売機でお釣りを計算する
2.4 基数を変換する
2.5 素数を判定する
2.6 フィボナッチ数列を作る
第3章 計算量について学ぶ
3.1 計算コストと実行時間、時間計算量
3.2 データ構造による計算量の違い
3.3 アルゴリズムの計算量と問題の計算量
第4章 いろいろな探索方法を学ぶ
4.1 線形探索
4.2 二分探索
4.3 木構造での探索
4.4 さまざまな例を実装する
第5章 データの並べ替えにかかる時間を比べる
5.1 身近な場面でも使われる「並べ替え」とは?
5.2 選択ソート
5.3 挿入ソート
5.4 バブルソート
5.5 ヒープソート
5.6 マージソート
5.7 クイックソート
5.8 処理速度を比較する
第6章 実務に役立つアルゴリズムを知る
6.1 最短経路問題とは?
6.2 ベルマン・フォード法
6.3 ダイクストラ法
6.4 A*アルゴリズム
6.5 文字列探索の力任せ法
6.6 Boyer-Moore法
6.7 逆ポーランド記法
6.8 ユークリッドの互除法
付録 Pythonのインストール
A.1 Pythonの処理系を知る
A.2 AnacondaでPythonをインストールする
A.3 複数のバージョンのPythonを切り替える
A.4 パッケージのインストールと削除
A.5 インストールがエラーになった場合
↓全て表示↑少なく表示
内容サンプル


著者略歴
増井技術士事務所代表。技術士(情報工学部門)。1979年奈良県生まれ。大阪府立大学大学院修了。システムアーキテクト、テクニカルエンジニア(ネットワーク、情報セキュリティ)、その他情報処理技術者試験にも多数合格。また、ビジネス数学検定1級に合格し、公益財団法人日本数学検定協会認定トレーナーとしても活動。「ビジネス」×「数学」×「IT」を組み合わせ、コンピュータを「正しく」「効率よく」使うためのスキルアップ支援や、各種ソフトウェアの開発を行なっている(本データはこの書籍が刊行された当時に掲載されていたものです)
↓全て表示↑少なく表示
 
アルゴリズム・データ構造の本 最新・高評価のおすすめの5冊
以下が「アルゴリズム・データ構造の本」最新・高評価のおすすめの5冊詳細です。
Rank | 製品 | 価格 |
---|---|---|
1 | アルゴリズムイントロダクション 第3版 総合版:世界標準MIT教科書... 発売日 2018/01/09 Thomas H. Cormen, Clifford Stein, Ronald L. Rivest, Charles E. Leiserson (近代科学社) 総合評価 | |
2 | ||
3 | ||
4 | ||
5 |
アルゴリズムイントロダクション 第3版 総合版:世界標準MIT教科書
(著)Thomas H. Cormen, Clifford Stein, Ronald L. Rivest, Charles E. Leiserson
発売日 2018/01/09
購入前にお使いの端末で無料サンプルをお試しください。
世界標準 MIT 教科書!!
原著は,計算機科学の基礎分野で世界的に著名な4人の専門家がMITでの教育用に著した計算機アルゴリズム論の包括的テキストであり,その第3版.前版までで既にアルゴリズムとデータ構造に関する世界標準教科書としての地位を確立しているが,より良い教科書を目指して再び全面的な記述の見直しがなされ,それを基に新たな章や節の追加なども含めて,大幅な改訂がなされている.
単にアルゴリズムをわかりやすく解説するだけでなく,最終的なアルゴリズム設計に至るまでに,どのような概念が必要で,それがどのように解析に裏打ちされているのかを科学的に詳述している.
さらに各節末には練習問題(全957題)が,また章末にも多様なレベルの問題が多数配置されており(全158題),学部や大学院の講義用教科書として,また技術系専門家のハンドブックあるいはアルゴリズム大事典としても活用できる.
本書は,原著の第1〜35章,および付録A〜Dまでの完訳総合版である.また巻末の索引も圧巻で,和(英)‐英(和)という構成により,「数理用語辞典」としてもまことに有用である.
↓全て表示↑少なく表示
内容サンプル


目次
II ソートと順序統計量;6.ヒープソート,7.クイックソート,8.線形時間ソート,9.中央値と順序統計量;
III データ構造:10.基本データ構造,11.ハッシュ表,12.2分探索木,13.2色木,14.データ構造の補強;
IV 高度な設計と解析の手法:15.動的計画法,16.貪欲アルゴリズム,17.ならし解析
V 高度なデータ構造:18.B木,19.フィボナッチヒープ,20.Van Emde Boas木,21.互いに素な集合族のためのデータ構造
VI グラフアルゴリズム:22.基本的グラフアルゴリズム,23.最小全域木,24.単一始点最短路問題,25.全点対最短路,26.最大フロー
VII精選トピックス:27.マルチスレッドアルゴリズム,28.行列演算,29.線形計画法,30.多項式とFFT,31.整数論的アルゴリズム,32.文字列照合,33.計算幾何学,34.NP完全性,35.近似アルゴリズム;
付録 数学的基礎:A.和,B.集合など,C.数え上げと確率,D.行列
索引:記号,手続き(擬似コード),和(英),英(和)
↓全て表示↑少なく表示
Users Voice
内容サンプル


著者略歴
1977年大阪大学大学院基礎工学研究科博士課程修了。現在、北陸先端科学技術大学院大学教授(工学博士)
岩野和生(イワノカズオ)
1987年プリンストン大学工学部コンピュータサイエンス学科Ph.D.取得。現在、三菱商事(株)ビジネスサービス部門顧問(Ph.D.)
梅尾博司(ウメオヒロシ)
1978年大阪大学大学院基礎工学研究科博士課程修了。現在、大阪電気通信大学総合情報学部教授(工学博士)
山下雅史(ヤマシタマサフミ)
1980年名古屋大学大学院工学研究科博士後期課程修了。現在、九州大学大学院システム情報科学研究院教授(工学博士)
和田幸一(ワダコウイチ)
1983年大阪大学大学院基礎工学研究科博士後期課程修了。現在、法政大学理工学部応用情報工学科教授(工学博士)(本データはこの書籍が刊行された当時に掲載されていたものです)
↓全て表示↑少なく表示
ウェブ最適化ではじめる機械学習 ―A/Bテスト、メタヒューリスティクス、バンディットアルゴリズムからベイズ最適化まで
(著)飯塚 修平
発売日 2020/11/19
シンプルなA/B テストを第一歩に、線形モデルの導入、メタヒューリスティクス、バンディットアルゴリズム、ベイズ最適化と、機械学習の知識を紹介しながら、ウェブサイトを最適化するという現実的な問題を解くための数理的な手法を解説します。
Pythonによるサンプルコードと、グラフィカルな図版で表現された数学的なモデルを組み合わせ、機械学習と統計学の基礎を丁寧に解説しています。
ウェブ最適化の手法を学びたい、機械学習の基礎を知りたい読者に最適の1冊です。
目次
Bテストからはじめよう:ベイズ統計による仮説検定入門
2章 確率的プログラミング:コンピュータの助けを借りる
3章 組合せのあるテスト:要素に分解して考える
4章 メタヒューリスティクス:統計モデルを使わない最適化手法
5章 バンディットアルゴリズム:テスト中の損失にも向き合う
6章 組合せのバンディット:バンディットアルゴリズムと統計モデルの出会い
7章 ベイズ最適化:連続値の解空間に挑む
8章 これからのウェブ最適化
付録A 行列演算の基礎
付録B ロジスティック回帰上のトンプソン抽出
↓全て表示↑少なく表示
Users Voice
著者略歴
UXエンジニア、クリエイティブテクノロジスト。博士(工学)。1989年茨城県土浦市生まれ。2017年東京大学工学系研究科技術経営戦略学専攻博士課程修了。在学中からさまざまなウェブサービスの立ち上げ・運営に携わり、ウェブ最適化の研究に従事(本データはこの書籍が刊行された当時に掲載されていたものです)
問題解決力を鍛える!アルゴリズムとデータ構造 (KS情報科学専門書)
競技プログラミング経験が豊富な著者が、「アルゴリズムを自分の道具としたい」という読者に向けて執筆。入門書を標榜しながら、AtCoderの例題、C++のコードが充実。入門書であり実践書でもある、生涯役立つテキストを目指した。
【推薦の言葉】
プログラムが「書ける」ことと、効率の良い結果を得ることには大分ギャップがある。本書は、どのようにすれば効率のよい結果が得られるか? すなわちどのようなアルゴリズムを採用すればよいか? という点に対して、幅広くかつ明快に解説している。
また本書は、アルゴリズム初心者に対して、アルゴリズムへの興味を惹かれるように記述されている。アルゴリズム上級者への初めの一歩には最適であろう。
――河原林健一(国立情報学研究所副所長)
【全体を通して、アルゴリズムの設計技法を重視した構成】
まず、1、2章でアルゴリズムと計算量について概観します。そして、3~7章が、早くも本書のメインパートといえる部分であり、「アルゴリズムの設計技法」について詳しく解説します。これらの設計技法に関する話題は、多くの書籍では、最後の方で簡単に説明しています。しかし本書は、現実世界の問題を解決するための実践的なアルゴリズム設計技法の鍛錬を目指しています。そこで、アルゴリズム設計技法について前半で詳しく解説する構成としました。そして、これらの設計技法が後半の章でも随所に使われていくことを示していきます。
その後、8~11章では、設計したアルゴリズムを効果的に実現するうえで重要となるデータ構造を解説します。データ構造について学ぶことで、アルゴリズムの計算量を改善したり、また、C++やPythonなどで提供されている標準ライブラリの仕組みを理解して、それらを有効に活用したりすることができるようになります。
そしていったん、12章でソートアルゴリズムについての話題を挟んだ後に、13~16章でグラフアルゴリズムについて解説します。グラフは、非常に強力な数理科学的ツールです。多くの問題は、グラフに関する問題として定式化することで、見通しよく扱うことができるようになります。また、グラフアルゴリズムを設計するとき、3~7章で学ぶ設計技法や、8~11章で学ぶデータ構造が随所で活躍します。
最後に、17章で PとNPに関する話題を解説し、世の中には「効率的に解くアルゴリズムを設計することができそうにない難問」が多数あることを見ます。18章で、これらの難問に取り組むための方法論をまとめます。ここでも、動的計画法 (5章) や貪欲法 (7章) といった設計技法が活躍します。
↓全て表示↑少なく表示
内容サンプル


目次
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章 難問対策
↓全て表示↑少なく表示
Users Voice
内容サンプル


著者略歴
↓全て表示↑少なく表示
アルゴリズム実技検定 公式テキスト[エントリー~中級編] (Compass Booksシリーズ)
(著)岩下 真也, 中村 謙弘
発売日 2021/02/27
※この商品はタブレットなど大きいディスプレイを備えた端末で読むことに適しています。また、文字列のハイライトや検索、辞書の参照、引用などの機能が使用できません。
※お使いの端末で無料サンプルをお試しいただいた上でのご購入をお願いいたします。
これからのIT人材必修の「アルゴリズム実技検定」初の公式テキスト登場!
■アルゴリズム実技検定(PAST)とは
アルゴリズム実技検定(PAST)とは、IT人材のプログラミングスキルを可視化することを目的としたAtCoder株式会社が主催する検定試験です。
■アルゴリズム実技検定の中級認定まで対応
本書は、「エントリー」「初級」「中級」の出題範囲を網羅的に解説しています。
プログラミングの基礎知識から、各種アルゴリズムの解説、数学的な問題解決方法まで、アルゴリズム実技検定だけでなく、これからのソフトウェアエンジニアに要求される知識を丁寧に盛り込みました。
本書を通じて学習することで、「中級」に求められる「様々なアプローチがある課題において、適切なアルゴリズムを選択し、高速なプログラムを作成」できることを目指しましょう。
■本書の特徴
□特徴1:はじめての挑戦でもこの1冊で準備できます!
はじめてのプログラミング、はじめての検定試験でも安心して挑戦できます。
・問題の解き方から回答方法まで丁寧に解説
・中級範囲に出題されるアルゴリズム(問題解決方法)も細かく図解
・Pythonの特徴から基本文法、標準入出力も例を交えて丁寧に説明
□特徴2:実際の問題を解きながら学べます!
アルゴリズム実技検定で求められる知識を問題に取り組みながら得られます。
・はじめての挑戦でもつまずかないように、概念図を豊富に掲載
・はじめてではわかりづらい、問題文の読み解き方も丁寧に解説
・過去にAtCoderやアルゴリズム実技検定で出題された問題を抜粋して解説
□特徴3:プログラマーに求められる知識も身につきます!
問題を解決するだけではなく、高速なプログラムの作成方法も学習できます。
・課題に合わせて、適切なアルゴリズムの選択方法を解説
・複数のアプローチがありえる問題では回答パターンを紹介
・計算量を考えてプログラムを書き換える方法も丁寧に説明
■本書の構成
1章 アルゴリズム実技検定の挑戦にあたって
2章 問題の解き方
3章 アルゴリズムとコーディング
4章 入門編(標準入出力、if、for、簡単な数学的問題)[エントリー編]
5章 基礎編(二次元配列、各種探索、再帰、数学的な問題)[初級編]
6章 応用編(各種探索、各種順列、動的計画法、メモ化再帰、計算量改善テクニック、累積和、グラフアルゴリズム)[中級編]
7章 さらなる得点を狙うために
●目次
第1章 アルゴリズム実技検定の挑戦にあたって
1-1 試験要綱
1-2 スケジュール、学習方法の手引き
1-3 アルゴリズム実技検定を通じて実現できること
1-4 なぜPythonではじめるのか
1-5 実行環境の準備
第2章 問題の解き方
2-1 PASTでの回答方法、ジャッジについて
2-2 どういう順番で回答するべきか
2-3 受験時に準備しておいた方が良いもの
第3章 アルゴリズムとコーディング
3-1 アルゴリズムの簡単な説明
3-2 データ構造について
3-3 コーディングについて
第4章 入門編(エントリー合格レベル)
4-1 Pythonの特徴
4-2 標準入出力の使い方
4-3 整数、小数の使い方
4-4 文字列の使い方
4-5 配列の使い方
4-6 if文を用いた条件分岐
4-7 条件判定とTrue、Falseの使い方
4-8 for文とwhile文を用いた繰り返し
4-9 辞書型の使い方
4-10 問題を解いてみよう
第5章 基礎編(初級合格レベル)
5-1 二次元配列(配列処理)
5-2 各種探索(全探索)
5-3 グラフ
第6章 応用編(中級合格レベル)
6-1 幅優先探索と深さ優先探索
6-2 動的計画法
6-3 集合に対する全探索と動的計画法
6-4 数学的基礎知識の紹介、数学的問題
6-5 累積和
6-6 貪欲法
6-7 二分探索
6-8 最短路問題
6-9 最小全域木問題
6-10 組み合わせと数え上げ問題
6-11 クエリの処理
第7章 さらなる得点を狙うために
7-1 アルゴリズムを組み合わせる
7-2 考察テクニックを身につける
7-3 複雑な解法を整理して解ききる
↓全て表示↑少なく表示
内容サンプル


目次
1.1 試験要綱
1.2 スケジュール・学習方法の手引き
1.3 アルゴリズム実技検定の特徴
1.4 本書で使用するプログラミング言語"Python"について
1.5 実行環境の準備
第2章 問題の解き方
2.1 PAST 採点の仕組みと回答方法
2.2 問題を解く順番
2.3 受験時に準備しておくべきもの
第3章 アルゴリズムとコーディング
3.1 アルゴリズムについて
3.2 データ構造について
3.3 コーディングについて
第4章 Pythonを使ったプログラミング[エントリー編]
4.1 Pythonの特徴
4.2 Python の基本文法
4.3 標準入出力の使い方
4.4 整数、小数の使い方
4.5 文字列の使い方
4.6 配列の使い方
4.7 if文を用いた条件分岐
4.8 条件判定とTrue、Falseの使い方
4.9 for文とwhile文を用いた繰り返し
4.10 辞書型の使い方
4.11 問題を解いてみよう
4.12 その他の応用的な機能
4.13 PyPyについて
第5章 基礎的なアルゴリズム[初級編]
5.1 2次元配列
5.2 全探索
5.3 グラフの基礎
第6章 応用的なアルゴリズム[中級編]
6.1 中級認定に向けて
6.2 計算量
6.3 幅優先探索と深さ優先探索
6.4 動的計画法
6.5 集合に対する全探索と動的計画法
6.6 数学的問題
6.7 累積和
6.8 貪欲法
6.9 二分探索
6.10 最短路問題
6.11 最小全域木問題
6.12 組み合わせと数え上げ問題
6.13 クエリの処理
第7章 さらなる得点を狙うために
7.1 アルゴリズムを組み合わせる
7.2 頻出考察テクニックを身につける
7.3 複雑な解法を整理して解ききる
付録:さまざまなPythonの関数と記法
↓全て表示↑少なく表示
Users Voice
内容サンプル


著者略歴
↓全て表示↑少なく表示
Pythonで作って学べる ゲームのアルゴリズム入門
オール図解のアルゴリズムの解説書。簡単かつ楽しい作例でスキルアップできる一冊です。
内容サンプル


目次
第2章 プログラミングの基礎
第3章 ミニゲームを作ろう
第4章 図形を描こう
第5章 神経衰弱を作ろう
第6章 三目並べを作ろう
第7章 リバーシ(オセロ)を作ろう〜前編
第8章 リバーシ(オセロ)を作ろう〜後編
特別付録 エアホッケーを作ろう
↓全て表示↑少なく表示
Users Voice
内容サンプル


著者略歴
早稲田大学理工学部卒業。ナムコ、および任天堂とコナミが設立した合弁会社に勤めた後、ワールドワイドソフトウェア有限会社を設立して独立。多数のゲームソフト開発を手がけ、プログラミングの技術力を生かして、さまざまなアプリケーション・ソフトウェア開発も行ってきた。現在は会社を経営しながら、教育機関でプログラミングやゲーム制作を指導したり、本を執筆している(本データはこの書籍が刊行された当時に掲載されていたものです)
↓全て表示↑少なく表示
 
アルゴリズム・データ構造の本「Kindle Unlimited 読み放題 人気本ランキング」
「Kindle Unlimited」は、Amazonの定額本読み放題サービス。
最近はKindle Unlimitedで読める本もどんどん増えており、雑誌、ビジネス書、実用書などは充実のラインナップ。
以下がKindle Unlimitedで読み放題となるアルゴリズム・データ構造の本の一覧です。
30日無料体験も可能なので、読みたい本があれば体験期間で無料で読むことも可能です。
Rank | 製品 | 価格 |
---|---|---|
1 | 390円 | |
2 | 【2022最新版】SEO対策マスターガイド: 日本一詳しいGoogle,BingのSEO対策とアルゴリズムの完全ガイドブック:SEOに強いブ... 発売日 2020/07/05 アポロ (ブルーポイント出版) Kindle Unlimited対象 総合評価 | 980円 |
3 | ||
4 | 999円 | |
5 | 99円 | |
6 | 1,250円 | |
7 | アルゴリズム基礎 研修用テキスト: 新入社員研修用に特化した、アルゴリズムを初めて学ぶ人のための本 新入社員研修シリーズ (テクノファイブ株... 発売日 2021/04/09 テクノファイブ株式会社 Kindle Unlimited対象 総合評価 | 1,250円 |
8 | 999円 | |
9 | アルゴリズム基礎 追加演習問題: 弊社テキスト「アルゴリズム基礎」に対応した、追加の演習問題 新入社員研修シリーズ (テクノファイブ株式会社... 発売日 2021/04/12 テクノファイブ株式会社 Kindle Unlimited対象 | 500円 |
10 | 999円 |
アルゴリズム本「新書一覧(2021年、2022年刊行)」
IT技術・プログラミング言語は、最新情報のキャッチアップも非常に重要、すなわち新書は要チェック。
ということで、2020年以降に発売したアルゴリズム本の新書一覧(発売日の新しい順)が以下です。
製品 | 価格 |
---|---|
827円 | |
500円 | |
1,250円 | |
1,100円 | |
Pythonからはじめるアルゴリズムトレード ―自動売買の基礎と機械学習の本格導入に向けたPythonプログラミング... 発売日 2022/04/08 Yves Hilpisch (オライリージャパン) 総合評価 | |
2,200円 (+1105pt) | |
390円 | |
脱・社畜!SEOで月50万稼ぐ 商標名アフィリエイト攻略術!上位表示に必要な5つの手順【素人厳禁!】: 稼げるノウハウを完全公開!アルゴリズ... 発売日 2021/12/01 我孫子信夫 Kindle Unlimited対象 総合評価 | 100円 |
関連:ゲーム開発や機会学習等を学ぶ
基本アルゴリズム・データ構造を学んだら、処理速度や高度なアルゴリズムを応用する、ゲーム開発やAI実装、機械学習などで活用してみましょう。
以下ではゲーム開発や、Pythonでの機械学習の書籍も紹介しています、合わせてのぞいて見てください。
いじょうでっす。
コメント