-
啊哈!算法
这不过是一本有趣的算法书而已。和别的算法书比较,如果硬要说它有什么特点的话,那就是你能看懂它。 这是一本充满智慧和趣味的算法入门书。没有枯燥的描述,没有难懂的公式,一切以实际应用为出发点, 通过幽默的语言配以可爱的插图来讲解算法。你更像是在阅读一个个轻松的小故事或是在玩一把趣味解谜 游戏,在轻松愉悦中便掌握算法精髓,感受算法之美。 本书中涉及到的数据结构有栈、队列、链表、树、并查集、堆和图等;涉及到的算法有排序、枚举、 深度和广度优先搜索、图的遍历,当然还有图论中不可以缺少的四种最短路径算法、两种最小生成树算法、 割点与割边算法、二分图的最大匹配算法等。 网名啊哈磊。 曾在中科院玩过单片机。武汉大学历史上第一位以本科生身份加入MSRA(微软亚洲研究院)的小伙伴,在机器学习组从事搜索引擎方面的研究。 发表国际会议论文一篇(IEEE)。 全国青少年信息学奥林匹克金牌教练。 超萌超简洁的C语言编译器——“啊哈C编译器”作者。 2013年我的著作,有趣的编程科普书《啊哈C!》出版。 网址:www.ahalei.com 微博:weibo.com/ahalei 非常喜欢小朋友,每天都过得都非常开心。 至于为什么叫“啊哈磊”,因为我觉得这是一个很喜庆的名字。 -
算法谜题
算法是计算机科学领域最重要的基石之一。算法谜题,就是能够直接或间接地采用算法来加以解决的谜题。求解算法谜题是培养和锻炼算法思维能力一种最有效和最有乐趣的途径。 本书是一本经典算法谜题的合集。本书包括了一些古已有之的谜题,数学和计算机科学有一部分知识就发源于此。本书中还有一些较新的谜题,其中有一部分谜题被用作知名IT企业的面试题。全书可分为4个部分,分别是概览、谜题、提示和答案。概览介绍了算法设计的通用策略和算法分析的技术,还附带有不少的实例。谜题部分将谜题按照简单、中等难度和较难三个层级分别列出。提示部分依次给出谜题提示,帮助读者找到正确的解题方向,同时仍然为读者留下了独立求解的空间。答案部分则给出了谜题的详细解答。 本书可以为对算法感兴趣的广大读者提供系统丰富而实用的资料,能够帮助读者提升高阶算法思维能力。本书适合计算机专业的高校教师和学生,想要培养和训练算法思维和计算思维的IT专业人士,以及在准备面试的应聘者和面试官阅读参考。 -
算法设计
《大学计算机教育国外著名教材系列:算法设计(影印版)》是近年来关于算法设计和分析的不可多得的优秀教材。《大学计算机教育国外著名教材系列:算法设计(影印版)》围绕算法设计技术组织素材,对每种算法技术选择了多个典型范例进行分析。《大学计算机教育国外著名教材系列:算法设计(影印版)》将直观性与严谨性完美地结合起来。每章从实际问题出发,经过具体、深入、细致的分析,自然且富有启发性地引出相应的算法设计思想,并对算法的正确性、复杂性进行恰当的分析、论证。《大学计算机教育国外著名教材系列:算法设计(影印版)》覆盖的面较宽,凡属串行算法的经典论题都有涉及,并且论述深入有新意。全书共200多道丰富而精彩的习题是《大学计算机教育国外著名教材系列:算法设计(影印版)》的重要组成部分,也是《大学计算机教育国外著名教材系列:算法设计(影印版)》的突出特色之一。 -
计算机程序设计艺术(第3卷)-排序和查找(英文影印版)
《计算机程序设计艺术排序和查找(第3卷)(第2版)》内容简介:这是对第3卷的头一次修订,不仅是对经典计算机排序和查找技术的最全面介绍,而且还对第1卷中的数据结构处理技术作了进一步的扩充,通盘考虑了将大小型数据库和内外存储器。它遴选了一些经过反复检验的计算机方法,并对其效率做了定量分析。第3卷的突出特点是对“最优排序”一节作了修订,对排列论原理与通用散列法作了全新讨论。 -
算法设计技巧与分析
本书是国际著名算法专家李德财教授主编的系列丛书“Lecture Notes Series on Computing”中的一本。本书涵盖了绝大多数算法设计中的一般技术,在表达每一种技术时,阐述它的应用背景,注意用与其他技术比较的方法说明它的特征,并提供大量相应实际问题的例子。本书同时也强调了对每一种算法的详细的复杂性分析。全书分七部分19章,从算法设计和算法分析的基本概念和方法入手,先后介绍了递归技术、分治、动态规划、贪心算法、图的遍历等技术,对NP完全问题进行了基本但清楚的讨论。对概率算法、近似算法和计算几何这些近年来发展迅猛的领域也用一定的篇幅讲述了基本内容。书中每章后都附有大量的练习题,有利于读者对书中内容的理解和应用。 本书结构简明,内容丰富,适合于作为计算机学科以及相关学科算法课程的教材和参考书,尤其适宜于学过数据结构和离散数学课程之后的算法课教材。同时也可作为从事算法研究的一本好的入门书。 -
Approximation Algorithms
'This book covers the dominant theoretical approaches to the approximate solution of hard combinatorial optimization and enumeration problems. It contains elegant combinatorial theory, useful and interesting algorithms, and deep results about the intrinsic complexity of combinatorial problems. Its clarity of exposition and excellent selection of exercises will make it accessible and appealing to all those with a taste for mathematics and algorithms' - Richard Karp, University Professor, University of California at Berkeley. Following the development of basic combinatorial optimization techniques in the 1960s and 1970s, a main open question was to develop a theory of approximation algorithms. In the 1990s, parallel developments in techniques for designing approximation algorithms as well as methods for proving hardness of approximation results have led to a beautiful theory. The need to solve truly large instances of computationally hard problems, such as those arising from the Internet or the human genome project, has also increased interest in this theory. The field is currently very active, with the toolbox of approximation algorithm design techniques getting always richer. It is a pleasure to recommend Vijay Vazirani's well-written and comprehensive book on this important and timely topic. "I am sure the reader will find it most useful both as an introduction to approximability as well as a reference to the many aspects of approximation algorithms' - Laszlo Lovasz, Senior Researcher, Microsoft Research.