ChatGPT掀起了现象级的风暴,赶超ChatGPT潮流,算法突破是关键。
本书介绍了若干常见算法,涉及排序、哈希、动态规划与近似算法、高斯消去法、图论与线性规划、无约束优化、迭代法、插值与拟合等。本书在介绍算法的同时,结合了作者自己对数学背景、应用场景的理解,便于读者把握算法的核心思想。而且,本书不仅指出了哪些算法可以解决问题,还指出了哪些算法可以更好地解决问题,便于读者深入理解算法。本书尽可能地避开了以应试为导向的灌输式讲解,力求引起读者的兴趣并扩大其视野,例如在介绍哈希时,讲解了如何将哈希的算法思想运用于相似性搜索、负载均衡等多个实际问题中;又如在介绍高斯消去法时,讲解了相关的数学理论及编程实现上的具体技巧,并将其运用于对大规模稀疏线性方程组的求解,等等。
本书面向有一定高等数学、编程语言基础及对算法有初步了解的读者,包括高等院校的学生、程序员、算法分析人员及设计人员等,旨在帮助读者进一步学习算法,理解与算法相关的理论基础和应用实例。
夯实算法基础,平替ChatGPT!高效算法归纳!刁神新版!排序、哈希、动态规划与近似算法、高斯消去法、图论与线性规划、无约束优化、迭代法、插值与拟合、比特币、负载均衡
刁瑞,毕业于中国科学院数学与系统科学研究院,博士期间的研究方向为最优化方法。曾获2009年英特尔杯全国计算机多核程序设计大赛第1名,以及2011年KDD Cup第2名等。
谢妍,毕业于中国科学院数学与系统科学研究院,博士期间的研究方向为并行有限元计算。曾在微软互联网工程院从事搜索研发相关工作。
ChatGPT掀起了现象级的风暴,赶超ChatGPT潮流,算法突破是关键。
许多经典的算法教科书都详尽地介绍了算法的各个知识点,但在覆盖面广的同时难免会忽略许多细节问题。例如,哪些算法真正值得运用到实际问题中,算法有哪些变种值得我们了解,算法背后有哪些数学理论支撑,等等。
本书讨论了计算机算法相关的若干话题,在介绍算法的同时结合了作者自己对数学背景、应用场景的理解,便于读者把握算法的核心思想。而且,本书不仅指出了哪些算法可以解决问题,还指出了哪些算法可以更好地解决问题,这有助于我们对算法的深入理解。
本书总计 8 章,除了讲解基本知识,还回答了许多相关的有趣问题。
• 排序:排序算法有很多种,在比较流行的编程语言中都有提供排序算法的库函数,直接调用这些库函数会非常简单。但它们所使用的算法为何有效,这些算法与一些经典的排序算法又有什么区别?
• 哈希:在讲解哈希算法时一般主要介绍哈希函数的作用及哈希表的不同实现方法。但将哈希函数运用于不同的问题时,最为巧妙的地方在于哈希函数的设计。对于不同领域的问题,哈希函数都有哪些有趣的形式?
• 动态规划与近似算法:通常这两类算法并不会放在一起去探讨。在面对不同复杂性的问题时,它们会有怎样的互补作用?
• 高斯消去法:算法的基本过程是很简单的,但在实际使用中远远没有那么简单。如何保持计算的稳定性?如何解决稀疏矩阵的计算效率问题?
• 图论与线性规划:图论中的许多问题都可以用线性规划去解决。图论中的一些经典结论实质上也可以用线性规划的相关定理去解释。线性规划作为一个更一般的工具,如何用于处理图论问题?• 无约束优化:无约束优化主要用于求解函数的最大值或最小值的问题。常用的这些方法为何有效?它们之间的差别在哪里?
• 迭代法:常见的迭代算法都有哪些?它们为什么有效?
• 插值与拟合:插值与拟合的思想是什么?有什么异同?如何运用于图像处理?
本书已建立读者交流群,欢迎加入该群,与更多同道中人互动。具体加群方式,请参见本书封底的“读者服务”。