本书内容分为3部分:算法和算法分析、算法设计策略及求解困难问题。第1部分介绍问题求解方法、算法复杂度和分析、递归算法和递推关系;第2部分讨论常用的算法设计策略:基本搜索和遍历方法、分治法、贪心法、动态规划法、回溯法和分枝限界法;第3部分介绍NP完全问题、随机算法、近似算法和密码算法。书中还介绍了两种新的数据结构:跳表和伸展树,以及它们特定的算法分析方法,并对现代密码学做了简要论述。 本书结构清晰、内容翔实、逻辑严谨、深入浅出。书中算法有完整的C++程序,程序构思精巧,且有详细注释。所有程序都已在vc++环境下编译通过并能正确运行,它们既是学习算法没计的示例,也能使复杂抽象的算法设计更易为学习者理解和掌握。书中包含大量实例和图示,并附丰富的习题,便于自学。 本书可作为高等院校计算机科学与技术和其他相关专业的本科和研究生的"算法设计与分析"课程的教材或参考书,是"算法与数据结构"或"数据结构"课程有益的教学参考书,也可供计算机工作者和其他希望了解和学习算法知识的人员参考。