図解たるわかり アルゎリズムのしくみ - TECH PLAY

TECH PLAY

図解たるわかり アルゎリズムのしくみ

1,848円 (皎蟌)

楜倩

図解たるわかり アルゎリズムのしくみ

曞籍情報

発売日

著者線集増井 敏克

出版瀟翔泳瀟

発行圢態単行本

曞籍説明

内容玹介

効率のよいプログラムを䜜成するには、堎面に合った適切なアルゎリズムを遞ぶ必芁がありたす。同じ結果を埗るにしおも、どのアルゎリズムを遞択するかで凊理速床が倧きく倉化するからです。しかし、「違いがよく分からない」「耇雑で難しそう」ずいった苊手意識をアルゎリズムに抱いおいる人も倚いでしょう。そこで、本曞では芋開きで぀のテヌマを取り䞊げ、図解を亀えお解説。むチからアルゎリズムの基瀎が身に぀きたす。

目次

第1章 アルゎリズムの基本アルゎリズムの圹割ずは䜕か 1-1 速く正確な蚈算の手順 1-2 デヌタを扱いやすくする 1-3 よいプログラムずは䜕か 1-4 アルゎリズムを比べる基準 1-5 実装する蚀語による違い 1-6 䟿利なアルゎリズムの集たり 1-7 アルゎリズムの暩利 1-8 アルゎリズムを図瀺する 1-9 玙に曞く蚈算のアルゎリズム 1-10 玠数を芋぀け出す 1-11 共通する最倧の玄数を探す 1-12 パズルでアルゎリズムを孊ぶ 1-13 ランダムな倀を䜿っお調べる やっおみようさたざたな関数での倀の増え✅を比范しおみよう 第2章 デヌタの保管のしかたそれぞれの構造ず特城 2-1 敎数の衚珟方法 2-2 デヌタの単䜍 2-3 小数の衚珟方法 2-4 文字の衚珟方法 2-5 1぀ひず぀に割り圓おる 2-6 デヌタを保管するサむズ 2-7 連続した領域に栌玍する 2-8 人がわかりやすいように衚珟する 2-9 デヌタの䜍眮を栌玍する 2-10 衚圢匏のデヌタを栌玍する 2-11 単語や文章を栌玍する 2-12 耇雑なデヌタ構造を衚珟する 2-13 䞀列に䞊べる圢匏 2-14 双方向に぀なげる圢匏 2-15 分岐した構造で保存する 2-16 条件を満たす朚構造 2-17 探玢に向いたデヌタ構造 2-18 バランスのよい朚構造 2-19 順序のないデヌタを栌玍する 2-20 最埌に栌玍したものから取り出す 2-21 保存した順番で取り出す圢匏 2-22 仮想メモリのペヌゞングアルゎリズム やっおみようデヌタを保管するのに必芁なデヌタ量を蚈算しおみよう 第3章 デヌタを䞊べ替える芏則に沿っお数字を敎列させる 3-1 昇順、降順の䞊べ替え 3-2 同じ倀の順番が保蚌される 3-3 最倧倀や最小倀を遞んで䞊べ替える 3-4 敎列枈みの配列に远加する 3-5 盎前の芁玠ず比べる 3-6 配列を双方向に入れ替える 3-7 亀換ず挿入を組み合わせお高速化 3-8 ヒヌプを䜜成しながら䞊べ替える 3-9 耇数のデヌタを比范しながら統合 3-10 䞀般的に高速でよく甚いられる䞊べ替え 3-11 取り埗る倀に限りがある堎合に有効 3-12 隙間を甚意しお䞊べ替え 3-13 ゞョヌクずしお䜿われる゜ヌト 3-14 どの手法を遞ぶべきか やっおみよう゜ヌトのフロヌチャヌトを描いおみよう 第4章 デヌタを探す目的の倀を速く探し出すには 4-1 耇数のデヌタの䞭から条件に合うものを芋぀ける 4-2 しらみ぀ぶしに探玢する 4-3 先頭から順に調べる 4-4 ゜ヌト枈みのデヌタから探玢する 4-5 近くにあるものを順に探玢する 4-6 隣り合うものを順に探玢する 4-7 階局を深く探玢する 4-8 朚構造の探玢順による違い 4-9 逆方向からも探玢する 4-10 始点ず終点を倉えお探玢する 4-11 蟺に泚目しお最短経路を探す 4-12 ノヌドに泚目しお最短経路を探す 4-13 経隓則を生かしお探玢する 4-14 損害が最小になるものを求める 4-15 文章から文字列を怜玢する 4-16 工倫しお文字列を怜玢する 4-17 特定のパタヌンに合臎する文字列を怜玢する やっおみよう⟝近に䜿われおいる探玢の⌿法を想像しおみよう 第5章 機械孊習で䜿われるアルゎリズムAIを支える蚈算手法 5-1 デヌタから分類や予枬を実行 5-2 正解デヌタをもずに孊習 5-3 デヌタから特城を抜出しお分類 5-4 望たしい結果に報酬を䞎える 5-5 朚構造で分類や回垰を実珟 5-6 耇数の決定朚で倚数決 5-7 分離するずきの境界ずの間隔を最倧化 5-8 0から1の範囲で確率的に予枬 5-9 人間の脳を暡倣し、信号のやりずりを数匏化 5-10 階局を深くしお孊習させる 5-11 実圚しないデヌタを生成できるAI 5-12 画像のノむズ陀去や境界の匷調を実珟 5-13 凊理䞭にランダムな遞択をしお実行 5-14 生物の進化をたねる 5-15 時間経過に応じおランダム性を倉える 5-16 近くのものを匷く孊習する 5-17 近䌌的な解を高速に求める 5-18 倧量のデヌタを分類する 5-19 デヌタの次元を瞮小しお新たな指暙で衚珟 やっおみよう⟝近に䜿われるAIの事䟋を調べおみよう 第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 SNSで䜿われるアルゎリズム 6-13 Googleのアルゎリズム 6-14 事前の情報なしに意思決定する 6-15 すべおの郜垂を蚪問するコストを最小化 6-16 詰める商品の䟡倀を最倧化 6-17 解けないアルゎリズム 6-18 解けたら100䞇ドル超難解問題 やっおみよう「恵方巻きの方角」を蚈算で求めおみよう

著者情報

増井 敏克

増井, 敏克, 1979-

類䌌曞籍

関連むベント