ISBN 9784839972776

アルゴリズム実技検定 公式テキスト[エントリー〜中級編]

アルゴリズム実技検定 公式テキスト[エントリー〜中級編]
出版社
マイナビ出版
刊行
2021-02

概要

PAST エントリー〜中級を Python で体系的に突破する

想定読者

AtCoder や paiza でアルゴリズム力を証明したい Python 学習者。競技プログラミング未経験から中級認定を狙う人

こんな人には向いていない

  • C++ や Java を主言語にしており Python サンプルに価値を感じない中〜上級者
  • PAST 上級・特級相当の難易度(ABC D〜E 問題以上)を安定して解ける人には内容が平易すぎる
  • アルゴリズムの理論的背景や計算量解析を数学的に掘り下げたい読者には証明の記述が薄い

読了後にできるようになること

  • グリッド探索・隣接リストによるグラフ管理など、初見で詰まりやすい問題類型の解き方を図解で習得できる
  • Python の標準入出力・基本文法から始めて、BFS・DFS・動的計画法・二分探索などの典型アルゴリズムを実装できる
  • 計算量(O 記法)を意識してプログラムを書き換える判断軸を持てる
  • 複数の解法アプローチがある問題で適切なアルゴリズムを選択する基準を身につけられる
  • AtCoder や PAST で出題された過去問を題材に、問題文の読み解き方から回答まで一貫して練習できる

本書のキー概念(章解説)

  • 第 1 章 アルゴリズム実技検定の挑戦にあたって — 検定の概要・受験方法・採点基準を把握する章。最初に読んで目標を具体化する
  • 第 2 章 問題の解き方 — 問題文の読み解き方と回答の手順を丁寧に解説。初学者はここで詰まりを防げる
  • 第 3 章 アルゴリズムとコーディング — アルゴリズム思考の基礎。計算量と実装の接続を意識して読むと効果が高い
  • 第 4 章 Python を使ったプログラミング[エントリー編] — Python 入門を兼ねたエントリー対策。文法経験者は速読可
  • 第 5 章 基礎的なアルゴリズム[初級編] — BFS・DFS・二分探索など最頻出パターンを集中的に習得できる核心章
  • 第 6 章 応用的なアルゴリズム[中級編] — 動的計画法・グラフ応用など中級認定に直結。初級編の理解を前提に読む
  • 第 7 章 さらなる得点を狙うために — 上位スコアを狙う戦略と追加テクニック。中級合格後のステップアップにも使える

ハイライト

  • 私は初めてグリッドの問題を見たとき、冗談抜きでまったく何をしていいかわかりませんでした。ところがPAST本を開くと、そんなグリッドの問題や隣接リストを使ってグラフを管理する方法など、解き方の糸口すらサッパリわからなかった問題の解き方が、私が読んでもわかるように沢山書かれているではありませんか(初学者が具体的にどの種類の問題で詰まり、本書がどう突破口になったかが端的に示されている)

外部からの言及

  • AtCoder で初心者から緑コーダーになった体験記の中で、PAST 本が最大の転機と評される事例が見られる。グリッド問題やグラフ問題の解き方がはじめて腑に落ちたという具体的な体験が語られており、初学者の壁を突破する教材として参照されている(qiita)
  • paiza の Bランク到達を目指す記事では、Python ユーザーに向けたアルゴリズム学習の入り口として本書が明示的に推奨されている。既存の講座動画だけではカバーしきれない典型アルゴリズムの体系的習得手段として位置付けられている(qiita)
  • 本書には演習問題が少ないという指摘が実践者から出ており、Jupyter Notebook 形式の補完ワークブックを独自作成して公開する取り組みが生まれている。本書の解説品質への信頼を前提に、練習量の不足を補う外部リソースが求められている(qiita)

編集メモ

Qiita 確認記事 3〜4 件(累計 likes 約 520 強)。単独で大量引用される定番ではないが、AtCoder 入門者ルートの推薦リストに繰り返し登場し、Python ユーザーへの実務的推奨として定着している

読む前に押さえておきたいこと

  • Python の変数・リスト・条件分岐・ループの基本操作(第4章がカバーするが、ゼロ知識だと時間がかかる)
  • 標準入出力(input/print)の扱いに慣れていると問題を解くリズムをつかみやすい
  • O(N) といった計算量の概念を事前に少し知っておくと第3章の理解が深まる

学習のコツ

  • 第5章(初級編)と第6章(中級編)が本書の核心。Python 経験者は第4章を速読し、第5章から集中して取り組むと時間効率が上がる
  • 各アルゴリズムを読んだ後は AtCoder や PAST の過去問で即座に手を動かすこと。解説を読むだけで終わると定着しにくい
  • 演習量が物足りないと感じた場合は、Qiita 公開の非公式ワークブック(Google Colaboratory 対応)を組み合わせると補完できる
  • 第7章は中級認定後に読むと、上位点を狙うための視野が広がる。初読では第6章完了後に参照する程度で十分
出版社による内容紹介

■アルゴリズム実技検定(PAST)とは  アルゴリズム実技検定(PAST)とは、IT人材のプログラミングスキルを可視化することを目的としたAtCoder株式会社が主催する検定試験です。 ■アルゴリズム実技検定の中級認定まで対応  本書は、「エントリー」「初級」「中級」の出題範囲を網羅的に解説しています。  プログラミングの基礎知識から、各種アルゴリズムの解説、数学的な問題解決方法まで、アルゴリズム実技検定だけでなく、これからのソフトウェアエンジニアに要求される知識を丁寧に盛り込みました。  本書を通じて学習することで、「中級」に求められる「様々なアプローチがある課題において、適切なアルゴリズムを選択し、高速なプログラムを作成」できることを目指しましょう。 ■本書の特徴 □特徴1:はじめての挑戦でもこの1冊で準備できます!  はじめてのプログラミング、はじめての検定試験でも安心して挑戦できます。 ・問題の解き方から回答方法まで丁寧に解説 ・中級範囲に出題されるアルゴリズム(問題解決方法)も細かく図解 ・Pythonの特徴から基本文法、標準入出力も例を交えて丁寧に説明 □特徴2:実際の問題を解きながら学べます!  アルゴリズム実技検定で求められる知識を問題に取り組みながら得られます。 ・はじめての挑戦でもつまずかないように、概念図を豊富に掲載 ・はじめてではわかりづらい、問題文の読み解き方も丁寧に解説 ・過去にAtCoderやアルゴリズム実技検定で出題された問題を抜粋して解説 □特徴3:プログラマーに求められる知識も身につきます!  問題を解決するだけではなく、高速なプログラムの作成方法も学習できます。 ・課題に合わせて、適切なアルゴリズムの選択方法を解説 ・複数のアプローチがありえる問題では回答パターンを紹介 ・計算量を考えてプログラムを書き換える方法も丁寧に説明 ■本書の構成  第1章 アルゴリズム実技検定の挑戦にあたって  第2章 問題の解き方  第3章 アルゴリズムとコーディング  第4章 Pythonを使ったプログラミング[エントリー編]  第5章 基礎的なアルゴリズム[初級編]  第6章 応用的なアルゴリズム[中級編]  第7章 さらなる得点を狙うために

この本がどの学習段階で役立つかは、 関連する ロードマップ から確認できます。

質問に答えるだけで、
あなたに合う専門書が見つかる

IT・デザイン・士業・医療・経理・教育・研究 ほか、あらゆる分野の専門書と 「読む順序」(学習ロードマップ)を収録。何を選べばいいか分からなくても、 いくつかの質問に答えるだけでたどり着けます。