珠玉のプログラミング
原書名 | Programming Pearls |
---|---|
著者名 | 小林 健一郎 訳 |
発行元 | 丸善出版 |
発行年月日 | 2000年10月 |
判型 | A5 210×148 |
ページ数 | 324ページ |
ISBN | 978-4-621-06607-2 |
Cコード | 3004 |
NDCコード | 007 |
ジャンル | 電気・電子・情報工学 > 情報・コンピュータ > 言語・プログラミング |
内容紹介
本書は著者を含めたプログラマーたちが扱った問題をベースに、エレガントなプログラムを書く際のさまざまなアドバイスや手法について解説。大学でのアルゴリズム講義に登場してくる探索やソート、データ構造といった内容に触れており、現実的な題材の下に要求の定義、リソースの活用の仕方、動作する環境などのさまざまな側面からどのようにアルゴリズムを組むべきかといった、プログラムを組む上での原理原則を学べるように構成されている。題材となっている内容はプログラムを組んだ経験のある人ならば必ず触れたことのあるレベルなので、高級言語でのプログラムが書ける人ならば誰でも理解できる内容になっている。随所に登場する設問や読書案内も読者が学習する上で役に立つだろう。自分のプログラミングを原則的、一般的な見地からよりよいものにしていくために必携の一冊。
目次
序文
第I部 はじめに
コラム1――真珠貝を開いて
1.1 フレンドリーな会話
1.2 問題の正確な定義
1.3 プログラムデザイン
1.4 コードのスケッチ
1.5 原則
1.6 問題
1.7 読書案内
コラム2――「ああ(そうか)!」アルゴリズム
2.1 3つの問題
2.2 至るところで2分探索
2.3 「基本操作の繰り返し・組み合わせ」で解く
2.4 まとめるためのソート
2.5 原則
2.6 問題
2.7 読書案内
2.8 アナグラムプログラムの実装
コラム3――データで決まるプログラムの構造
3.1 調査プログラム
3.2 定型文プログラム
3.3 いろいろな配列の例
3.4 データの構造化
3.5 特定のデータに関する強力なツール
3.6 原則
3.7 問題
3.8 読書案内
コラム4――正しいプログラムを書く
4.1 2分探索に挑戦
4.2 プログラムを書く
4.3 プログラムを理解する
4.4 原則
4.5 プログラム検証の役割
4.6 問題
4.7 読書問題
コラム5――あと少しの事
5.1 疑似コードからCへ
5.2 テスト
5.3 表明の技法
5.4 テストの自動化
5.5 実行時間の計測
5.6 完全なプログラム
5.7 原則
5.8 問題
5.9 読書案内
5.10 デバック
第II部 パフォーマンス
コラム6――パフォーマンスに関する考察
6.1 あるケーススタディ
6.2 デザインレベル
6.3 原則
6.4 問題
6.5 読書案内
コラム7――封筒の裏で・・・
7.1 基本的な素養
7.2 パフォーマンスの評価
7.3 安全係数
7.4 リトル(Little)の法則
7.5 日常生活の速算
コラム8――アルゴリズムデザインのテクニック
8.1 問題と単純なアルゴリズム
8.2 2乗のアルゴリズム
8.3 分割して征服するアルゴリズム
8.4 走査アルゴリズム
8.5 それがどういうことか
コラム9――コードチューニング
9.1 典型的な話
9.2 応急手当的なチューニング
9.3 大手術的なコードチューニング――2分探索で
9.4 原則
9.5 問題
コラム10――メモリの節約
10.1 キーポイントは単純さ
10.2 典型的な例
10.3 データ空間でのテクニック
10.4 プログラミングコードが使うメモリの節約
10.5 大きな節約の例
第III部 作品
コラム11――ソート
11.1 挿入ソート
11.2 簡単なクイックソート
11.3 よりよいクイックソート
11.4 原則
11.5 問題
11.6 読書案内
コラム12――サンプリング問題
12.1 問題
12.2 1つの謎
12.3 デザイン空間
12.4 原則
12.5 問題
12.6 読書案内
コラム13――探索
13.1 インターフェイス
13.2 線形構造
13.3 2分探索木
13.3 整数のためのデータ構造
13.5 原則
13.6 問題
13.7 読書案内
13.8 実際の探索問題
コラム14――ヒープ
14.1 データ構造
14.2 2つの重要な関数
14.3 順位キュー(プライオリティーキュー)
14.4 ソートアルゴリズム
14.5 原則
14.6 問題
14.7 読書案内
コラム15――真珠の列
15.1 単語
15.2 フレーズ
15.3 テキストを生成する
15.4 原則
15.5 問題
15.6 読書案内
第1版のエピローグ
第2版のエピローグ
付録1――アルゴリズムのカタログ
・整列(ソート)
・探索(サーチ)
・他のセットのアレゴリズム
・文字列に関するアレゴリズム
・ベクトル(1次の配列)と行列(2次の配列)に関するアルゴリズム
・ランダムなもの
・数値アルゴリズム
付録2――評価クイズ
付録3――実行時間と使用メモリのコストモデル
付録4――コードチューニングのルール
・時間節約のためにメモリを使う
・メモリ節約のために時間を使う
・ループ
・論理
・プロシージャ(関数)のルール
・表現
付録5――探索のためのC++クラス
出版社からのメッセージ
------------------------------------------
本書は、書籍からスキャナによる読み取りを行い、印刷・製本を行っています。
一部、装丁が異なったり、印刷が不明瞭な場合がございますが、ご了承くださいますようお願い申し上げます。
------------------------------------------
▼ 関連記事
- 深くしっかり学ぶプログラミング&機械学習特集!2023.03.15
- 【重版情報】2021年3月重版書籍一覧2021.04.06
- 【書店用注文書】2021年3月重版書籍一覧注文書2021.04.02
- 【書店・生協様向け】プログラミング&機械学習フェア2019.09.26
- 【2017年10月】新刊案内・一覧注文書2017.10.01
- 旧・ピアソン桐原より翻訳刊行されていた書籍を、丸善出版より一部再出版いたします2013.12.01