首页 > 图书中心 >图书详情

算法设计与分析(第2版)

更新20.4.27,提供PPT课件,源码,答案,教学大纲,题库,咨询QQ:883604(仅限教师)。50小时微课视频讲解,案例来源于著名IT企业面试笔试题和ACM竞赛题

作者:李春葆、李筱驰、蒋林、陈良臣、喻丹丹
定价:59.50
印次:2-23
ISBN:9787302500988
出版日期:2018.08.01
印刷日期:2024.03.05

本书系统地介绍了各种常用的算法设计策略,包括递归、分治法、蛮力法、回溯法、分枝限界法、贪心法、动态规划、概率算法和近似算法等,并详细讨论了各种图算法和计算几何设计算法。 全书既注重原理又注重实践,配有大量图表、练习题、上机实验题和在线编程题,内容丰富,概念讲解清楚,表达严谨,逻辑性强,语言精练,可读性好。 本书既便于教师课堂讲授,又便于自学者阅读,适合作为高等院校“算法设计与分析”课程的教材,也可供ACM和各类程序设计竞赛者参考。

more >

前言 算法在计算科学中扮演着重要角色。算法设计是计算机科学与技术专业的必修课,其目标是培养学生分析问题和解决问题的能力,使学生掌握算法设计的基本技巧和方法,熟悉算法分析的基本技术,并能熟练运用一些常用算法策略解决一些较综合的问题。 在学习本书之前,学生已经学习了基本的数据结构知识,能熟练运用一门或多门编程语言,并具备了一定的编程经验。如何利用已学过的知识针对不同的实际问题设计出有效的算法,是本书所要达到的目的。 本书的特点是“问题模型化,求解算法化,设计最优化”,在掌握必要的算法设计技术和编程技巧的基础上,能够在实际工作中根据具体问题设计和优化算法。本书是针对这一特点并结合课程组全体教师多年的教学经验编写的。 1. 本书内容 全书由12章构成,各章的内容如下。 第1章概论: 介绍算法的概念、算法分析方法和STL在算法设计中的应用。 第2章递归算法设计技术: 介绍递归的概念、递归算法设计方法和相关示例、递归算法到非递归算法的转化以及递推式的计算。 第3章分治法: 介绍分治法的策略和求解过程,讨论采用分治法求解排序问题、查找问题、最大连续子序列和问题、大整数乘法问题及矩阵乘法问题的典型算法,并简要介绍了并行计算的概念。 第4章蛮力法: 介绍蛮力法的特点、蛮力法的基本应用示例、递归在蛮力法中的应用以及图的深度优先和广度优先遍历算法。 第5章回溯法: 介绍解空间概念和回溯法算法框架,讨论采用回溯法求解0/1背包问题、装载问题、子集和问题、n皇后问题、图的m着色问题、任务分配问题、活动安排问题和流水作业调度问题的典型算法。 第6章分枝限界法: 介绍分枝限界法的特点和算法框架、队列式分枝限界法和优先队列式分枝限界法,讨论采用分枝限界法求解0/1背包问题、图的单源最短路径、任务分配问题和流水作业调度问题的典型算法。 第7章贪心法: 介绍贪心法的策略、求解过程和贪心法求解问题应具有的性质,讨论采用贪心法求解活动安排问题、背包问题、最优装载问题、田忌赛马问题、多机调度问题、哈夫曼编码和流水作业调度问题的典型算法。 第8章动态规划: 介绍动态规划的原理和求解步骤,讨论采用动态规划法求解整数拆分问题、最大连续子序列和问题、三角形最小路径问题、最长公共子序列问题、最长递增子序列问题、编辑距离问题、0/1背包问题、完全背包问题、资源分配问题、会议安排问题和滚动数组的典型算法。 第9章图算法设计: 讨论构造图最小生成树的两种算法(Prim和Kruskal算法,并查集的应用)、求图的最短路径的4种算法(Dijkstra、BellmanFord、SPFA和Floyd),并采用5种算法策略求解旅行商问题(TSP问题),最后介绍网络流的相关概念以及求最大流和最小费用最大流的算法。 第10章计算几何: 介绍计算几何中常用的矢量运算以及求解凸包问题、最近点对问题和最远点对问题的典型算法。 第11章计算复杂性理论简介: 介绍图灵机计算模型、P类和NP类问题以及NPC问题。 第12章概率算法和近似算法: 介绍这两类算法的特点和基本的算法设计方法。 书中带“*”符号的章节作为选学内容。 2. 本书特色 本书具有如下鲜明特色。 (1) 由浅入深,循序渐进: 每种算法策略从设计思想、算法框架入手,由易到难地讲解经典问题的求解过程,使读者既能学到求解问题的方法,又能通过对算法策略的反复应用掌握其核心原理,以收到融会贯通之效。 (2) 示例丰富,重视启发: 书中列举大量的具有典型性的求解问题,深入剖析采用相关算法策略求解的思路,展示算法设计的清晰过程,并举一反三,激发学生学习算法设计的兴趣。 (3) 注重求解问题的多维性: 同一个问题采用多种算法策略实现,如0/1背包问题采用回溯法、分枝限界法和动态规划求解,旅行商问题采用5种算法策略求解。通过不同算法策略的比较,使学生更容易体会到每一种算法策略的设计特点和各自的优/缺点,以提高算法设计的效率。 (4) 强调实验和动手能力的培养: 算法讲解不仅包含思路描述,而且以C/C++完整程序的形式呈现,同时给出了大量的上机实验题和在线编程题,大部分是近几年国内外的著名IT企业面试笔试题(谷歌、微软、阿里巴巴、腾讯、网易等)和ACM竞赛题。通过这些题目的训练,不仅可以提高学生的编程能力,而且可以帮助其直面求职市场。 (5) 本书配套有《算法设计与分析(第2版)学习与实验指导》(李春葆,清华大学出版社,2018),涵盖所有练习题、上机实验题和在线编程题的参考答案。 (6) 本书配套有绝大部分知识点的教学视频,视频采用微课碎片化形式组织(含100多个小视频,累计超过20小时),读者通过扫描二维码即可观看相关视频讲解。 3. 教学资源 本书提供的教学资源包括完整的教学PPT和书中全部源程序代码(在VC++ 6.0中调试通过),用户可以扫描封底课件二维码免费下载。 4. 感谢 本书的编写得到湖北省教育厅和武汉大学教学研究项目《计算机科学与技术专业课程体系改革》的大力帮助,清华大学出版社的魏江江主任全力支持本书的编写工作,王冰飞老师给予精心的编辑工作。 本书在编写过程中参考了很多同行的教材和网络博客,特别是“牛客网”中众多的企业面试、笔试题和丰富资源给予编者良好的启发,河南工程学院张天伍老师和使用本教材第1版的多位老师指正多处问题和错误,在此一并表示衷心感谢。 本书是课程组全体教师多年教学经验的总结和体现,尽管编者不遗余力,但由于水平所限,难免存在不足之处,敬请教师和同学们批评指正,在此表示衷心感谢。 编者 2018年5月

more >
扫描二维码
下载APP了解更多

同系列产品more >

算法设计与分析(第3版)学习指导

李春葆、刘娟、喻丹丹、
定 价:54元

查看详情
算法设计与分析(第3版)在线编程...

李春葆、刘娟、喻丹丹、
定 价:49.80元

查看详情
算法设计与分析(第3版·微课视频·...

李春葆,刘娟,喻丹丹,
定 价:59.80元

查看详情
算法设计与分析基础(Java版)(微...

李春葆、刘娟、喻丹丹
定 价:59.80元

查看详情
算法设计与分析基础(Java版)学习...

李春葆、刘娟、喻丹丹
定 价:49.80元

查看详情
图书分类全部图书
more >
  • 难度适中,强调算法设计和动手能力培养
    注重实验,提供大量的上机实验题和在线编程题
    案例来源于著名IT企业面试笔试题和ACM竞赛题

    教学资源丰富,每个知识点都配套了视频讲解



    如果希望加入教师微信交流群,请加微信:itbook8

    如果希望加入教师QQ交流群,请加QQ:883604

    加入时,请写明:“学校+姓名”,并写明“加入教师群”,只限教师。




  • 难度适中,强调算法设计和动手能力培养
    注重实验,提供大量的上机实验题和在线编程题
    案例来源于著名IT企业面试笔试题和ACM竞赛题
    教学资源丰富,每个知识点都配套了视频讲解
more >
  • 目录

    第1章概论/

    1.1算法的概念/

    1.1.1什么是算法/

    1.1.2算法描述/

    1.1.3算法和数据结构/

    1.1.4算法设计的基本步骤/

    1.2算法分析/

    1.2.1算法时间复杂度分析/

    1.2.2算法空间复杂度分析/

    1.3算法设计工具——STL/

    1.3.1STL概述/

    1.3.2常用的STL容器/

    1.3.3STL在算法设计中的应用/

    1.4练习题/

    1.5上机实验题/

    1.6在线编程题/

    第2章递归算法设计技术/

    2.1什么是递归/

    2.1.1递归的定义/

    2.1.2何时使用递归/

    2.1.3递归模型/

    2.1.4递归算法的执行过程/

    2.2递归算法设计/

    2.2.1递归与数学归纳法/

    2.2.2递归算法设计的一般步骤/

    2.2.3递归数据结构及其递归算法设计/

    2.2.4基于归纳思想的递归算法设计/

    2.3递归算法设计示例/

    2.3.1简单选择排序和冒泡排序/

    2.3.2求解n皇后问题/

    2.4*递归算法转化为非递归算法/

    2.4.1用循环结构替代递归过程/

    2.4.2用栈消除递归过程/

    2.5递推式的计算/

    2.5.1用特征方程求解递归方程/

    2.5.2用递归树求解递归方程/

    2.5.3用主方法求解递归方程/

    2.6练习题/

    2.7上机实验题/

    2.8在线编程题/

    第3章分治法/

    3.1分治法概...

版本展示

精彩书评more >

标题

评论

版权所有(C)2023 清华大学出版社有限公司 京ICP备10035462号 京公网安备11010802042911号

联系我们 | 网站地图 | 法律声明 | 友情链接 | 盗版举报 | 人才招聘