无处不在的算法---《算法神探》读后感

简介: 最近,我参加了CSDN举办的“从高考到程序员”征文活动,获赠了一本图书。在众多图书中,我选了《算法神探》,觉得这本书从名字上来看就比较有意思。

最近,我参加了CSDN举办的“从高考到程序员”征文活动,获赠了一本图书。在众多图书中,我选了《算法神探》,觉得这本书从名字上来看就比较有意思。拿到书之后,我分两次就把它读完了,可以毫不夸张地说,这是一本让你可以一口气就读完的计算机科普类图书。
这里写图片描述
首先说一下这本书的大致情况。本书是Google首席工程师Jeremy Kubica的作品(当然,这个人我也没听说过),翻译者是啊哈磊和李嘉浩。对于啊哈磊这个人,IT行业的人或许听说过,他写过一本书叫《啊哈!算法》,读者挺多的。《算法神探》这本书一共二百多页,29个章节,几乎每章都涉及到一种算法或数据结构。在跌宕起伏的故事情节中,我们可以领略到算法之美。

本书的故事情节大概是这样的:一个王国的警局总部遭遇了一起盗窃案,警长请一位被解雇的前探员Frank Runtime来将这个案子调查清楚;之所以要请一位被解雇的探员,是因为他是一位老练的私家侦探,并且非常擅长搜索;Frank Runtime利用他的搜索算法搜查走私的船、跟踪间谍、逃离监狱、开锁,并在最后揭发了一桩暗藏在深处的阴谋。这本书的每一章都是一个故事片段,同时会引入一个新的算法概念。为了加深大家对算法基础知识的了解,在每章的结尾处都会回顾并详细描述本章内出现的算法知识。

按照章节顺序,在本书中出现的算法或数据结构包括:穷举搜索、数组、字符串、二分搜索、广度优先搜索、深度优先搜索、栈、队列、并行算法、迭代加深、逆向索引、二叉搜索树、trie树、最佳优先搜索、优先队列、启发式搜索、堆。下面是对这些概念的简单解释:

穷举搜索:在整个搜索空间内尝试每一种可能性。
数组:一个数组就像一排箱子一样,每个箱子可以存储一条信息。
字符串:由一系列字符组成,这些字符可以是字母、数字、符号或空格。
二分搜索:其工作原理是不断地将搜索空间分成两半,并且把搜索空间限制在其中的一半中。
广度优先搜索:是一个按顺序依次尝试可能的搜索选项的算法,它每次都会选择尝试首先发现的但还没有尝试过的选项。
深度优先搜索:优先考虑最近新遇到的搜索状态,它会沿着一条路往下走,直到遇到目标状态,或者是一条死路。
栈:是一个后入先出的数据结构。
队列:是一个先入先出的数据结构。
并行算法:将一个问题分成数个小块,并同时在这些小块上执行计算,最后再将结果组合起来。
迭代加深:是深度优先搜索的一种改版,它限制了每一次搜索的深度,在第k轮搜索的时候,这个算法会执行一次深度限制为k的深度优先搜索。
逆向索引:它和书的索引类似,对于每一个值,逆向索引可以告诉你这个值在数据中的哪些地方出现过。
二叉搜索树:它是一种数据结构,它存储信息的方式和二叉搜索中使用信息的方式类似,树中的每一个节点存放一个值,并且每个节点最多有两个子节点,左子节点中存放的值都比当前节点中的值小,右子节点中存放的值都比当前节点中的值大。
trie树:是基于树的数据结构,用户可以很方便地通过某个字符串的前缀来搜索到目标字符串。
最佳优先搜索:是基于某种估值分数或者评价函数来选择接下来探索哪个状态的算法。
优先队列:它让你能插入数据,然后按特定的顺序删除数据。
启发式搜索:依据经验来帮助算法快速达到目标。
堆:是基于二叉搜索树的数据结构,它的每个节点与其子节点之间需要时刻维持有序关系;具体而言,对于最大堆,树中的任意一个节点的值都要大于(或等于)其下面的所有节点。

看完了这本书,我的体会有这几个:
第一,一本好的书就是要让其内容具备趣味性,让读者能够有继续读下去直到读完(甚至读好几遍)的理由。
第二,算法不光只是存在于计算机科学的研究和实践中,在我们的生活中,算法也是无处不在的。大到做一个人生中的重要决定,小到买菜购物,背后的指导思想都是算法。
第三,解决一个问题的方法往往不止一种,我们要根据实际情况选择合适的方法,但这个方法可能不是最优的。

《算法神探》,一本具备趣味性和知识性的计算机科普读物,推荐给大家阅读!


欢迎大家扫码加入我的小蜜圈:
这里写图片描述

目录
相关文章
|
3月前
|
机器学习/深度学习 人工智能 算法
DeepMind最新成果剑指量子力学,FermiNet或将破解近百年计算难题
DeepMind公司近期在量子力学计算领域取得了重要突破,推出了一种名为FermiNet的神经网络模型,旨在克服量子系统计算难题。FermiNet基于变分蒙特卡洛方法,直接处理电子坐标,有效提升了计算精度与效率。在基态能量、电子结构及反应动力学等量子化学问题上表现出色,超越了传统DFT方法。尽管存在计算资源和近似误差等局限,但这一成果仍为量子力学研究提供了新工具和思路,未来有望在量子计算中发挥更大作用。论文详情见:[论文地址链接](https://www.science.org/doi/abs/10.1126/science.adn0137)。
81 2
|
5月前
|
安全 网络安全 量子技术
【骇入心灵的暗网迷雾与密码学的绝地反击】——揭秘网络空间中的致命漏洞与加密艺术的生死较量,一段关于光明与黑暗的数字史诗!
【8月更文挑战第7天】互联网是无限可能之地,亦暗藏危机。网络安全漏洞威胁隐私与安全,加密技术如坚盾保护我们。本文探索网络阴影及加密技术如何运作:对称加密快速但密钥易泄,非对称加密安全但速度较慢。通过示例展示两者差异,并展望加密技术未来发展,确保数字世界安全航行。
81 0
|
算法 C++
走进“深度搜索基础训练“,踏入c++算法殿堂(一)
走进“深度搜索基础训练“,踏入c++算法殿堂(一)
71 0
|
机器学习/深度学习 传感器 算法
中外专家共同论道 | 人脑与机器渐行渐近,脑机接口「黑科技」照进现实
中外专家共同论道 | 人脑与机器渐行渐近,脑机接口「黑科技」照进现实
142 0
再学一道算法题: 食物链(带权并查集)
再学一道算法题: 食物链(带权并查集)
再学一道算法题: 食物链(带权并查集)
我国研发成功世界首台拟态计算机 受自然界最为奇妙的“伪装大师”——拟态章鱼的启发
2013年9月21日,我国宣布自主研发的世界第一台拟态计算机在上海研制成功,并通过863专家组验收。拟态计算机由中国工程院院士邬江兴带领科研团队,在科技部和上海市政府联合支持下,联合国内外十余家单位,聚合500余名研究人员,历时6年研究而成。
575 0
我国研发成功世界首台拟态计算机 受自然界最为奇妙的“伪装大师”——拟态章鱼的启发
|
区块链 人工智能 大数据
带你读《区块链真相》之二:靠谱人的靠谱联合改变世界——区块链带来的八大变革
本书涉及12大主题、80多个重大议题,采集原材料50万字,凝结着近40人的智慧,他们是企业家、科学家、大学教授、经济学家、比特币研究者、风险投资专家、数字业务发展战略家、法律界人士和科技媒体大佬、视频创作者,为各界人士尤其企业决策者,提供应对区块链的决策内参。
|
机器学习/深度学习 算法 搜索推荐
细数二十世纪最伟大的10大算法
导读:作者July总结了一篇关于计算方法的文章《细数二十世纪最伟大的10大算法》,此文只是本人对算法比较感兴趣,所以也做翻译,学习研究下。以下是文章内容: 发明十大算法的其中几位算法大师 一、1946 蒙特卡洛方法 [1946: John von Neumann, Stan Ulam, and N...
1395 0
|
算法 量子技术
18岁天才华裔少年用一个经典算法,推翻量子加速神话!
一位年仅18岁的华裔少年提出了一种传统计算机AI算法,其运算速度可以与量子计算比肩,相对之前的传统算法实现了运算速度的指数级增长。这一发现不仅推翻了两位量子计算重量级人物的量子加速神话,而且证明了量子算法和经典算法研究之间存在富有成效的相互作用。
1675 0
|
算法
从一个骗局谈生活中的基础算法
不会分析骗局的程序员不会分析基础算法。
2450 0