時代が変わっても
変わらないアルゴリズムから考え方を学ぼう
本書は、初心者にも扱いやすいプログラミング言語「Python」を使用して、
アルゴリズムの基礎・考え方を学ぶ入門書です。特にPythonがはじめてという方の
ために、第1章ではPythonの基本とデータ構造について解説しています。
本書では、プログラミング入門者が最低限知っておきたいアルゴリズムの
基礎と考え方に加えて、アルゴリズムの定石とその計算量について、具体的
なサンプルコードと動作イメージを交えて丁寧に解説していきます。
【こんな方におすすめ】
・アルゴリズムをゼロから学びたい
・Pythonでプログラミングを学んでいるけれど何から手をつけていいのかわからない
・過去にアルゴリズムを学ぼうと思ったけれどPythonの資料が少なかった
・基本情報技術者試験でPythonが取り入れられるので勉強したい
【扱うアルゴリズム】
FizzBuzz|フィボナッチ数列|線形探索|二分探索|幅優先探索|
深さ優先探索|番兵|8クイーン問題|n-クイーン問題|ハノイの塔|
ミニマックス法|選択ソート|挿入ソート|バブルソート|ヒープソート|
マージソート|クイックソート|最短経路問題|ベルマン・フォード法|
ダイクストラ法|A*アルゴリズム|文字列探索の力任せ法|Boyer-Moore法|
逆ポーランド記法|ユークリッドの互除法
※本電子書籍は同名出版物を底本として作成しました。記載内容は印刷出版当時のものです。
※印刷出版再現のため電子書籍としては不要な情報を含んでいる場合があります。
※印刷出版とは異なる表記・表現の場合があります。予めご了承ください。
※プレビューにてお手持ちの電子端末での表示状態をご確認の上、商品をお買い求めください。
(翔泳社)
書籍に関する問い合わせ
正誤表、追加情報をご確認の上、こちらよりお問い合わせください
利用許諾に関する問い合わせ
本書の書影(表紙画像)の利用許諾申請はこちらになります
書影(表紙画像)以外の利用許諾については、「書籍に関する問い合わせ」をご利用ください
ご購入いただいた書籍の種類を選択してください。
刷数は奥付(書籍の最終ページ)に記載されています。
現在表示されている正誤表の対象書籍
書籍の種類:
書籍の刷数:
本書に誤りまたは不十分な記述がありました。下記のとおり訂正し、お詫び申し上げます。
対象の書籍は正誤表がありません。
最終更新日:2023年03月03日
発生刷 |
ページ数 |
書籍改訂刷 |
電子書籍訂正 |
内容 |
登録日 |
1刷 |
006
表1.2 インタプリタのデメリット |
3刷 |
済 |
誤 |
配布時に実行環境が必要 |
正 |
実行時に実行環境が必要 |
|
2020.07.30 |
1刷 |
084
図2.4「エラトステネスの篩」のフローチャート |
3刷 |
済 |
誤 |
上限>奇数の先頭 |
正 |
上限≧奇数の先頭 |
備
考 |
※リフローEPUBの場合、「図2.4 エラトステネスの篩」の後にフローチャートが表示されます。 |
|
2020.03.27 |
1刷 |
084
リスト2.19「eratosthenes.py」の下から6行目 |
3刷 |
済 |
誤 |
while limit > data[0]: |
正 |
while limit >= data[0]:
3刷で上記のように修正いたしましたが、内容に誤りがございました。
申し訳ございません。正しくは以下の通りです。
誤:while limit >= data[0]:
正:while (len(data) > 0) and (limit >= data[0]):
|
備
考 |
2023.03.03内容更新 |
|
2020.03.27 |
1刷 |
112
問題1の(3)上から7行目
|
3刷 |
済 |
誤 |
result += plus_minus * 4 / (i * 2 - 1) |
正 |
result += plus_minus * 4 / (i * 2 + 1) |
備
考 |
※リフローEPUBの場合、第3章の末尾にある「理解度Check!」の問題1の(3)が該当箇所になります。
|
|
2020.04.02 |
1刷 |
117
図「線形探索」内 |
3刷 |
済 |
誤 |
位値を返す |
正 |
位置を返す |
備
考 |
値 → 置
※リフローEPUBの場合、リスト4.2の手前にあるフローチャートが該当箇所になります。 |
|
2020.09.24 |
1刷 |
122
図4.3「対数関数のグラフ」 |
未 |
未 |
誤 |
 (画像クリックで拡大) |
正 |
 (画像クリックで拡大)
|
|
2021.07.28 |
1刷 |
135
リスト4.10 リスト枠の下に注記を追加 |
3刷 |
済 |
誤 |
|
正 |
※←~の左、右、上、下は、迷路を進む番兵の目線での方向を表しています。 |
|
2020.09.24 |
1刷 |
194
「マージ」の図 |
3刷 |
済 |
誤 |

|
正 |

|
備
考 |
「Yes」と「No」を追加します。
※リフローEPUBの場合、リスト5.11の手前にある図が該当箇所になります。 |
|
2021.03.17 |
1刷 |
223
「ヒープによる優先度付きキューを実装する」の図 |
2刷 |
済 |
誤 |

|
正 |

|
備
考 |
赤線部分を「小さい」から「大きい」へ訂正しました。
※リフローEPUBの場合、リスト6.4の後にある2つ目の小見出し「ヒープによる優先度付きキューを実装する」の最初の図が該当箇所になります。 |
|
2020.02.03 |
1刷 |
225
リスト6.5「dijkstra2.py」上から3行目
|
2刷 |
済 |
誤 |
 |
正 |
 |
備
考 |
赤い枠内を訂正しました。
※リフローEPUBの場合、コメント「# 各辺に対してコストを調べる」から6行目が該当箇所になります。 |
|
2020.02.03 |
1刷 |
233
リスト6.8「astar.py」下から3行目 |
未 |
済 |
誤 |
[[7, 5], [10, 6], [12, 3]] |
正 |
[[7, 5], [10, 3], [12, 6]] |
|
2021.06.07 |
1刷 |
267
【問題2】 |
2刷 |
済 |
誤 |
10,001,495人
(北海道+青森県+岩手県+岐阜県) |
正 |
10,000,000人
(青森県+宮城県+福井県+岐阜県+鳥取県+徳島県+佐賀県+長崎県) |
備
考 |
※リフローEPUBの場合、「付録B」の「[第4章]理解度Check!」の【問題2】の冒頭の太字部分が該当箇所になります。 |
|
2020.02.03 |
1刷 |
268
【問題2】「pref.py」の下から4行目の位置を修正
|
2刷 |
済 |
誤 |
|
正 |
|
備
考 |
下から2行目の「search(total + pref[pos], pos + 1)」の位置を修正しました。
※リフローEPUBの場合、「付録B」の「[第4章]理解度Check!」の【問題2】のコードが該当箇所になります。 |
|
2020.02.03 |
3刷 |
084
リスト2.19「eratosthenes.py」の下から6行目 |
未 |
未 |
誤 |
while limit >= data[0]: |
正 |
while (len(data) > 0) and (limit >= data[0]): |
|
2023.03.03 |