【感想・ネタバレ】世界でもっとも強力な9のアルゴリズムのレビュー

\ レビュー投稿でポイントプレゼント / ※購入済みの作品が対象となります
レビューを書く

感情タグBEST3

購入済み

アルゴリズムの基礎知識を学べる

2024年03月25日

この本はどちらかというと教養に近い内容が書かれています。僕らを取り巻く現在のコンピュータ科学について基本となってるアルゴリズムを9のテーマにわけて初心者でも分かりやすく説明されているので、予備知識が必要なく、さらにはIT関係者でなくても楽しんで読むことができます。自分はエンジニアとしての教養としてこ...続きを読むの本を読みました。とても面白かったです。

#タメになる

0

Posted by ブクログ 2022年08月12日

とても面白かった。
公開鍵暗号法や誤り訂正符号、データ圧縮などなど、普段名前だけよく見るけど内容のイメージがつかない技術に対して、専門的な前提知識無くても概要を理解できるという画期的な一冊。
こういう本もっと沢山読みたい。

0

Posted by ブクログ 2021年10月15日

コンピュータを裏で支える技術について興味がある人にオススメの本。特に,コンピュータ科学系を研究する予定の大学生にとっては入門書のような形で読めそう。

内容としてはスマホで検索する時,Webページを閲覧する時,オンライン決済をする時などにどのような効率的かつ信頼性のある仕組みを使っているかを紹介して...続きを読むいる。

仕組みを説明する際には段階的,具体的なアプローチをしており,予備知識がない人でも十分理解できるようになっていて分かりやすかった。

個人的には,本書に書かれている技術はすでに知っていたがここまで他人に対して分かりやすく説明できるレベルではなかった。自分の理解の浅さに気付かされた一冊である。

研究を始める前に読めていたら…と後悔する程の良書であると私は思う。

0

Posted by ブクログ 2019年11月25日

基本情報試験の気分転換に読む。

アルゴリズムそのものがわかる、というものではないが、今当たり前に動いているものの仕組みがどうなっているのかを理解するのにはわかりやすくていい本だと思う。

ここで取り上げられている9つのアルゴリズムは今の情報社会を支える強力なシステムですが、どうしてその立場を得られ...続きを読むたのかの便利さのエッセンスを平易な表現で解説してくれるので、専門外の自分でもするすると読めちゃいます。

個人的には決定不能問題の話がコンピュータの本質をえぐっていて非常に面白かったです。

0

Posted by ブクログ 2019年09月14日

偉大なアルゴリズムを以下の点で定義して、その定義に当てはまる9つの
アルゴリズムを紹介している
1.普通のコンピューターユーザーが毎日使っている
2.現実の世界の具体的な問題を解決している
3.コンピューター科学理論に関係している

9つのアルゴリズムは確かに普段はあまり意識せずに
使用しているもの...続きを読むばかりだった
(最後の決定不能性:コンピューターが出来ないことについて以外は。。)
しかも平易な説明であり、具体的な比喩が多く使われているため
アルゴリズムのイメージがつかみやすかった

1.検索エンジンのインデクシング
2.Webページのページランク
3.公開鍵暗号法
4.誤り訂正符号
5.パターン認識
6.データ圧縮
7.データベース
8.デジタル署名
9.決定不能性

数学的な知識がなくても理解できるように記載されていて、
詳しい内容については参考文献に任せている潔さがいい。
特に1.2.のインデクシングとページランクは
普段ググった結果のランク付け方法についてイメージがつかめて良かった

0

Posted by ブクログ 2018年10月20日

コンピュータを利用した便利な仕組みを実現するアルゴリズムの中で驚異的に強力な9つのものを取り上げている。技術の詳細な仕組みには立ち入らないで、そのアルゴリズムの本質を分かりやすく解説する。うまく例や比ゆを使っているな。

0

Posted by ブクログ 2017年12月31日

「アルゴリズム」という言葉は知っているが実際それがどのような処理をしているのかはまったく知らず、「コンピュータによる魔法のような処理」だと考えていた。
それがこの本を読んだことで、具体的なロジック(のさわり)は理解でき、魔法ではなく現実のものとして考えられるようになった。

---

73
ディフィ...続きを読むー=ヘルマン鍵交換

195
トランザクションとは、データベースへの一貫性のとれた状態にするためには全てが実行されなければならないデータベースへの一連の変更である。
データベースプログラマは、「トランザクション開始」のようなコマンドを発行してから、一連の相互依存する変更をデータベースに加え、最後に「トランザクション終了」コマンドを送る。

196
クラッシュ、再起動後、トランザクションが始まる前の状態にデータベースが戻ると言うことである(これをロールバックと呼ぶ)

252
数百、数千桁になると、素因数を見つけるのはきわめて難しい問題になる

253
原理的には、これらの暗号法やデジタル署名システムは、いつ破られてもおかしくないのだ

0

Posted by ブクログ 2015年07月24日

図解と比喩でわかりやすい、さまざまなアルゴリズムの概念。

アルゴリズムとあるが、具体的なコードの載った実装のための本ではない。
「わたしたちが日常的に用いる、具体的で、コンピュータ科学理論に関連した」アルゴリズムを、情報検索、情報通信から人工知能に至るまで9分野にわたって扱っている。

複雑になり...続きを読むがちなテーマについても、段階を踏んだ説明があり(公開鍵暗号とデジタル署名における指数南京錠、決定不可能性におけるイエスノープログラムなど)、
また適切な図解と比喩が理解を助けている(公開鍵暗号の絵具混合トリック、ページランクのランダムサーファートリック)。

以前から知っているアルゴリズムについても、比喩を通じて核心を理解を深め、他のアルゴリズムとの関連を学ぶことができる。
(データベースのWALプロトコルの有用性:To-doリストトリック。誤り訂正とデータ圧縮:情報理論。)

わたしたちの普段の生活を支えているアルゴリズムに触れ、コンピュータ科学とはなにかというを学ぶことができる一冊。

0

Posted by ブクログ 2014年11月01日

IT関連にかかわる仕事をしている私としては、それなりに理解できているアルゴリズムであったが、用語を知っている程度の人でもわかりやすいようなたとえで説明されていて、自分の理解が正しかったこと、中途半端に理解していたものを再確認できた。
ディジタル書名や公開鍵暗号は、これから学ぶ人にも役立つと思うのでぜ...続きを読むひ読んでもらいたい。
うちの若い人たちにも紹介したい一冊である。

0

Posted by ブクログ 2014年01月04日

実際にプログラミングするための技術書ではない。しかし、(社会的に影響力のある各種)アルゴリズムの「妙」を平易な言葉でうまく伝えている。そこに美学を感じられるかどうかは人それぞれだろう。自分は十分共感するので星五つ。
どの章もわかりやすく面白いが、一風変わった(ゲーデルの不完全性定理とも絡んでいると思...続きを読むわれる)「実現不可能なプログラムの存在証明」の章が一番印象的。

0

Posted by ブクログ 2013年02月13日

コンピューターの発展を支えてきたアルゴリズムを非常に分かりやすく解説している良書。複雑な解説に陥りがちなアルゴリズムを、徹底的に単純化した例を用いて解説している。文章自体がロジカルに構成されているためよどみなく読み進めることが出来る。

前半の5章までが、ぐうの音もでない整数論的な内容に対して、後半...続きを読むでは人間との知恵競べ的な内容になっていて、読み進めれば進めるほど楽しくなる構成となっています。

圧巻なのは終章における「コンピューター科学とは本当のところどういうものか?」という問いだと思う。「プログラミング」、「ハードウェア設計」は本の一手段に過ぎない。やはりコンピューター・サイエンスを学ぶ場合はまずチューリング・マシンから入るように、考え方の問題なのだと思う。
かつてPascalを学んだ時に手にしたニクラウス・ヴィルト著『アルゴリズム+データ構造=プログラム』を思い出さずにはいられない。

本書を読んだ後では間違いなく、コンピュータとのつきあい方が変わるであろう。

0

Posted by ブクログ 2018年10月23日

現在のコンピュータ社会を支えるキーアルゴリズムを9つピックアップし、身近な例もしくはアナロジーを使って解説する。この方法方法が見事で、素人にも理解でき、玄人にも満足できる内容となっている。

1

Posted by ブクログ 2024年01月04日

普段何気なくパソコン/スマホを触っていても意識しないが、言われてみれば「なるほど、こういう仕組みだったのか」と素人にも分かるよう噛み砕いてアルゴリズムを説明してくれている。

この本を読んで、基本情報の勉強を頑張ろうと思った。

0
ネタバレ

Posted by ブクログ 2023年10月19日

日常的に利用されている有用なアルゴリズムや簡単なコンピュータ科学について、誰でも理解できるように書かれた本。

全体的に読みやすく面白かったが、公開鍵暗号・デジタル署名の部分に関しては、サイモン・シンの説明の方が複雑である代わりにストーリー性が感じられたため、読み物として優れていると感じた。本業かそ...続きを読むうでないかの違いだろうか。

本書内で扱っている、アルゴリズムやコンピュータ科学に関する話題は次の通りである。

1.検索エンジンのマッチング・ランキングに関するトリック。主なものを挙げると、メタワードトリック、ハイパーリンクトリック、オーソリティトリック、ランダムサーファートリック。

2.公開鍵暗号、デジタル署名に関するトリック。

3.誤り訂正符号、データ圧縮に関するトリック。反復トリック、冗長性トリック、チェックサムトリック、ピンポイントトリック、ロス無し圧縮、ロスあり圧縮など。

4.パターン認識に関するトリック。最近傍法、決定木、ニューラルネットワークなど。

5.データベースの一貫性に関するトリック。to-doリストトリック、「準備してからコミット」トリック、仮想テーブルトリックなど。

6.決定不能性について。クラッシュ検出プログラムの不可能性についてなど。

7.今後有望なアルゴリズムについての簡単な紹介。

0

Posted by ブクログ 2020年12月23日

非常にわかりやすく読みやすい文章でアルゴリズムの面白いポイントを説明してくれる。
内容は時が経っても薄れず、本質的な面白さがいつまででも伝わる書き方になっていると思う。

0

Posted by ブクログ 2016年04月04日

アルゴリズムの存在自体は知っていただけど、どのようにそれが機能しているかは知らなかったので、ためになった。

0

Posted by ブクログ 2015年12月31日

この本では、アルゴリズムの定義として、「問題を解決するために必要な手順を正確に規定したレシピ」とし、それは機械的に感じられ、絶対に正確で、人間の直感や推測を必要としてならないとしており、その本質は何かというと、「チャーチ、チューリングのテーゼ」であると言っている。
無数に上げることができるアルゴリズ...続きを読むムについては、3つの基準を設定し、取り上げている。基準は、コンピューターユーザーが普段使っているもの、現実に利用する際の具体的な課題を解決するもの、コンピューター科学理論に関係が深いものとなっている。

0

Posted by ブクログ 2015年07月21日

現代社会において必要不可欠となっているページランクなどのアルゴリズムを、
技術者以外にも理解できるよう自然言語で表現した一冊。

なるほど丁寧に綴られており理解しやすいが、
多少なりとも比喩がまわりくどくなってしまうきらいがある。
もう少し数式や疑似コードがあるとスマートなのだが…と思ってしまうが、...続きを読むそれだと本書のターゲットには難解にうつるだろうから難しいところだ。

0

Posted by ブクログ 2015年02月25日

日頃意識せずに使っているシステムが、素晴らしいアイディアの積み重ねで作られていることが分かる本。感動します。

0

Posted by ブクログ 2014年03月17日

コンピュータ科学という大きな世界。プログラムの知識がなくても、アルゴリズムは説明できるし理解できる。いつも使っているコンピュータ、ブラックボックスを覗いて、驚きや満足を感じられるようになろう。

必要性と存在意義、そして日常的に恩恵を受けていることを改めて感じます。コンピュータ科学、すごい。

0

Posted by ブクログ 2013年06月10日

ページランキングn説明は面白かったが、公開鍵暗号についてはサイモン・シンの「暗号解読」の方が分かりやすかった。事実により近い説明は本書なんだろうけど。

0

Posted by ブクログ 2013年05月05日

3つの基準から9つの重要なアルゴリズム(正確にはコンピュータが行なう9種類の仕事に役立つ9種類のアルゴリズムグループ)を取り上げ、それがどういう理屈で機能しているかを、巧みな比喩を使って非専門家に説明した本。

《9種類のアルゴリズムグループ》
・インデクシング
・ページランク
・公開鍵暗号法
・誤...続きを読むり訂正符合
・パターン認識
・データ圧縮
・データベース
・デジタル署名
・クラッシュ検出(ただし、この9つめは、存在し得ない不可能なアルゴリズムであることの説明)

《本書が採用した3つの基準》
・普通のコンピュータユーザーが毎日使っているアルゴリズム
・現実の世界の具体的な問題を解決するアルゴリズム
・コンピュータ科学理論に関係のあるアルゴリズム(この基準により、ハードウェアを対象とするもの、インターネットなどのインフラ設計に関わるものは除外される)

だいたいのところは私でも理解できた(公開鍵暗号法とデジタル署名はちょっと難解で読み飛ばしましたが)。だとしても、それで、たとえばエクセルで行なう仕事の質とスピードが上がるわけではないし、多数のメールを効率よく処理できるようになるわけではない。

では、この本の目的は何か?著者の説明はこうだ。コンピュータを使う時に、背後で動いているブラックボックスについての知識があることで、読者が驚きや満足を味わえるようにすることである。天文学の知識ゆえに、夜空を眺める体験が多少なりとも深みを増すのと同じである。なるほど。なんとなくわかる気がする。

0

Posted by ブクログ 2024年01月11日

読んでいてとても眠くなりました。
アルゴリズムがどのように動いているのかを説明しているだけの本です。
誕生秘話的な物語を期待していたのですが、当てが外れました。
仕組みを理解したい人が読むべきですね。

0

Posted by ブクログ 2023年06月13日

メターワードトリックで検索エンジンがインデックスを作る。
Googleはページランキングというアルゴリズムでランクを作る。関連性の低いページから浮き立たせられる方法。
公開鍵による暗号。方法がわかっても簡単には計算できない。
冗長性トリック。
反復トリック。
チェックサムトリック。
最近傍法。
決定...続きを読む木でスパムメールを割り出す。
不可能性の証明はできる。
MD5というハッシュ関数は欠陥が見つかり消えた。
量子コンピュータが実用化するとRSAデジタル署名はクラックできるようになる。しかしアルゴリズムは消えない。

0

Posted by ブクログ 2020年11月06日

ひたすらただの感想。
暗号の話は詳しくなかったのでなるほど、勉強になった。パターン認識と演繹思考は馴染みがあるので、普段やってることはそんなに間違ってないんだなと確認。
量子コンピュータについても軽く触れてるだけだけど、なぜ高速なのか=ゼロイチじゃないから、というのもなるほど。
思えば、20歳くらい...続きを読むからずっと、ささやかなことばかりだけど、どうやったらコンピュータにやってもらえるかを考えてて、自分はこの分野が好きだったんだな。

0

Posted by ブクログ 2016年12月06日

コンピュータの世界で長く使われているアルゴリズムを、分かりやすい説明でまとめられている一冊。
対象は検索エンジンのページランクや公開鍵暗号、誤り訂正、データ圧縮など。
時に優しい言い回しすぎて、まわりくどく感じる部分もあるけど、全体的に分かりやすいと思う。

0

Posted by ブクログ 2015年09月22日

公開鍵暗号法。

鍵が公開されているのに、なんで暗号化できているんだっけ?
何回読んでも忘れる。
今回もそうだろう。

でも、これまでで一番やさしく、かつ、数学的でした。

(以下抜粋。○:完全抜粋、●:簡略抜粋)
●公開鍵暗号法(P.75-78)
 ステップ1:A、Bが秘密色を選ぶ
 ステップ2:...続きを読む公開色を確認する
 ステップ3:A、Bは自分の秘密色と公開色をまぜた混合色を作り、公開する
 ステップ4:AがBの混合色を持ってくる
 ステップ5:Aは秘密色とBの混合色を混ぜ合わせて、共有用の混合色をBに渡す
 ステップ6:Bは受け取った共有用の混合色から、
        公開色、Bの秘密色を取り除くと、Aの秘密色がわかる

○混合処理は「離散べき乗」、分散処理は「離散対数」と呼ばれる。
 そして、コンピュータが離散対数を効率よく計算する方法は見つかっていないので、
 離散べき乗は私たちが探している一方通行操作の一種と考えることができる。(P.85)

0

Posted by ブクログ 2014年12月17日

特に新しいものはなかったが復習になった。技術的な用語を使っていないので、人に説明する時の参考にしたい。

0

Posted by ブクログ 2014年05月13日

よいテーマだと思う。コンピューターまわりの本で、ビジネスでも個別技術解説でもハードウェアその他でもない分野。
記述は平易で、とても基礎的なことから(たとえば累乗の記述まで噛んで含めるように、また拡張子の解説まで)書かれているので、退屈することもあるのだけれど、それで油断しているとRSAの解説で集中を...続きを読む要求されたり。
最後は計算不能性まで解説していてすばらしい!と言いたいのだけれど、ちょっと物足りないかな。
すごく割り切ってもっと簡単にする、というのでない限り、もう少し踏み込んでくれないと中途半端だった気がする。
PCになじみの薄い高校生とか文系大学生(で理系に拒否反応示さない人)とか向けかなあ。ちょっとターゲット読者層がピンとこないかも。

0

Posted by ブクログ 2013年06月02日

ページランク、公開鍵暗号、2フェーズコミットなどIT系の人間にはある程度常識となっている著名なアルゴリズムを平易に解説している本。数式や抽象的な記述を極力排除した平易な解説が特徴なのだが、それが逆に少々まどろっこしいという印象もある。数式嫌いの人にはとても良い本だと思います。

個人的には第十章、決...続きを読む定不能性の章がおもしろかった。存在し得ないプログラム、を具体例を通して解説されておりとてもわかりやすい。全てのプログラムを対象としたクラッシュ検出プログラムというのが実現不能であることを具体例を通じてわかりやすく証明しています。チューリングなどが研究していた内容。要するに、”全てのプログラム”を対象とすると、プログラムには自分自身も含まれ、自己言及が発生するとおかしくなる、というのが肝だと思います。ゲーデルの不完全性定理などと通じるないようですね。ただ筆者も述べているように、”決定不能性がコンピュータの利用に及ぼす実際の影響はない”。あくまでも理論的な限界の追求ですね。なのであまり応用的な面では重要ではないのでしょうが、コンピュータ科学の理論としてはおもしろいと思います。

0

Posted by ブクログ 2013年02月24日

主要なアルゴリズムを素人でもわかるように紹介してくれる本です。一部、説明が回りくどくてわかりづらいところもありましたが、人によってはそのほうがわかりやすいのかもです。コンピュータ科学とは、学問としての数学の応用であることを感じました。。。

0

「IT・コンピュータ」ランキング