4 つの言語で解ける 実践プログラミング問題集(ヨッツノゲンゴデトケルジッセンプログラミングモンダイシュウ)
C 、 C++、 Java 、 Python
- 著者:
- 渡部有隆/西舘陽平/鈴木大郎/奥山祐市(ワタノベユタカ/ニシダテヨウヘイ/スズキタロウ/オクヤマ ユウイチ)
- 出版社:
- 近代科学社
- 出版日:
- 2021年03月01日頃
- ISBN:
- 9784764906280
- 在庫:
- 在庫あり
なぜ注目されているか
書籍紹介
1.問題解決と反復演習で楽しく学べる
2.基本文法と基礎的なアルゴリズムが、よく解る
3.4 つの言語で、比較しながら理解できる
本書は、 C 、 C++、 Java 、 Python の 4 つのプログラミング言語それぞれで、「問題解決」をとおして、プログラミング言語の基本文法と基礎的なアルゴリズムを学ぶ。従来の「文法を確認するための単純な問題」を解いていくスタイルとは異なり、プログラミングコンテストで出題された「考えて解く」問題をとおして、思考を要する実践的なプログラミングスキルを養う。構文などを学んだが、実際のプログラムが書けずに悩んでいる読者には最適の書である。
本書は、 C 、 C++、 Java 、 Python の 4 つのプログラミング言語それぞれで、「問題解決」をとおして、プログラミング言語の基本文法と基礎的なアルゴリズムを学ぶ。従来の「文法を確認するための単純な問題」を解いていくスタイルとは異なり、プログラミングコンテストで出題された「考えて解く」問題をとおして、思考を要する実践的なプログラミングスキルを養う。構文などを学んだが、実際のプログラムが書けずに悩んでいる読者には最適の書である。
第 1 部 準備
第 1 章 本書でプログラミングを学習するための準備
第 2 章 オンラインジャッジ
第 2 部 プログラミング入門
第 3 章 基本要素
第 4 章 条件分岐
第 5 章 繰返し処理
第 6 章 配列
第 7 章 文字列
第 8 章 関数
第 3 部 アルゴリズム入門
第 9 章 計算量
第 10 章 ソート
第 11 章 探索
第 12 章 整数
第 4 部 発想問題
第 13 章 発想問題
演習問題解答例
技書の森解説
プログラミングの文法を一通り学んだ後に「では何を書けばよいのか」と手が止まる段階があります。本書は C 、 Java 、 Python 、 Ruby の 4 言語で同じ問題を解くことで、言語ごとの表現の違いを比べながらアルゴリズム的思考を鍛える問題集です。著者の渡部有隆氏はオンラインジャッジ AIZU ONLINE JUDGE の運営に携わった経歴を持ち、問題の選定と段階的な難易度設計に競技プログラミングの知見が活かされています。
扱うテーマはソート、探索、グラフ、動的計画法など計算機科学の基本アルゴリズムが中心です。各問題を 4 言語で並べて見せる構成により、あるアルゴリズムの本質が特定の言語構文に依存しないことを体感できます。 2 言語目以降を学ぶ際の橋渡しとしても有用です。
競技プログラミングの上位を狙うような高難度の問題集ではないため、 AtCoder で水色以上を目指す読者には物足りなく感じるかもしれません。しかし、文法書を終えた段階から手を動かして考える力を付ける踏み台として、学生や新人エンジニアが自学に使う用途にはよく噛み合います。
言及 Qiita 記事 (3 件)
この本に興味がある方におすすめ
この本に関連
渡部有隆 の他の書籍
関連記事
アルゴリズム本ガイド - 競プロだけじゃない、実務に活きる選び方
アルゴリズム本の 3 タイプと、実務でアルゴリズムの知識が活きる場面、数学が苦手な人向けの学習ルートを紹介します。
機械学習・AI 本ガイド - エンジニアが読むべき技術書の選び方
機械学習の基礎から実践まで学べる技術書の選び方を紹介。「Python ではじめる機械学習」などのハンズオン本を軸に、数学が苦手な人向けの学習ルートと ML 本の賞味期限の見極め方を解説します。
データベース本ガイド - SQL から設計まで学べる技術書の選び方
データベースの基礎から設計、パフォーマンスチューニングまで学べる技術書の選び方と学習順序を紹介します。