| 图书基本信息 | |||
| 图书名称 | 算法基础与在线实践 | 作者 | 刘家瑛,郭炜,李文新 |
| 定价 | 30.40元 | 出版社 | 高等教育出版社 |
| ISBN | 9787040473001 | 出版日期 | 2017-03-01 |
| 字数 | 页码 | ||
| 版次 | 1 | 装帧 | 平装-胶订 |
| 开本 | 16开 | 商品重量 | 0.4Kg |
| 内容简介 | |
算法是程序设计的灵魂,代表着用系统的方法描述解决问题的策略与机制。本书将介绍简单模拟、枚举、递归、二分、贪心、动态规划和搜索等经典算法,带领读者体会它们巧妙的构思,感受利用它们解决问题的独特魅力。本书不仅讲解这些算法的基本原理思想,还通过具体例题对这些算法进行灵活、有效的展开和准确实现。本书中涉及的编程任务将充分训练读者的思维能力和动手能力,促成全面、缜密思考问题的习惯。 本书可作为高等学校计算机等相关专业算法设计类课程的教材,也可供对算法设计、程序设计竞赛感兴趣的读者自学使用。 |
| 作者简介 | |
| 李文新,女,北京大学博士,香港理工大学博士,现任北京大学信息科学技术学院教授、基础教育部副主任,北京大学计算机实验教学中心主任。主要研究领域为人工智能、生物特征识别技术,是国际上*早从事自动化掌纹识别的研究者之一。她目前也是中国计算机学会人工智能与模式识别专委会委员、信息学奥赛科学委员会委员,北京市科协青少年科技教育协会副理事长。她担任ACM/ICPC国际大学生程序设计竞赛亚洲区教练及竞赛指导委员会委员、北京大学ACM竞赛代表队领队,为推动ACM竞赛在北京大学、中国乃至亚洲的普及做了大量工作,2006年获ACM/ICPC组织颁发的“区域发展杰出贡献奖”。由她组织、为训练ACM队员而开发的北京大学在线程序评测系统目前已成为国际同类网站中*有影响的几个网站之一(acm.pku.edu./JudgeOnline)。 郭炜,北京大学信息科学技术学院教师,北京大学ACM国际大学生程序设计竞赛队教练。精研算法,曾11次负责为ACM国际大学生程序设计竞赛亚洲区预选赛命题,是为此项赛事主持命题次数*多的人。他具有十余年的C 教学经验,曾独立开发多种流行的商业软件(如《我爱背单词》、《我爱学语法》、《我爱学音标》),2012年独立编写出版《新标准C 程序设计教程》(978—7—302—28380一5)。 刘家瑛 博士,北京大学计算机科学技术研究所副教授。2010年6月毕业于北京大学计算机应用技术专业,获理学博士学位。2007—2008年,赴美国南加州大学多媒体通信实验室任访问学者。2015年,受铸星计划支持于微软亚洲研究院担任访问研究员。研究领域包括图像/视频表示、压缩与增强重建、计算机视觉与理解等。在国际重要期刊和会议上发表学术论文近80篇,申请国家发明40多项,其中13项已获得授权。曾获得“北京大学青年教师教学基本功比赛”一等奖、教学信息化先进个人、北京大学教学**奖。 李文新,女,北京大学博士,香港理工大学博士,现任北京大学信息科学技术学院教授、基础教育部副主任,北京大学计算机实验教学中心主任。主要研究领域为人工智能、生物特征识别技术,是国际上*早从事自动化掌纹识别的研究者之一。她目前也是中国计算机学会人工智能与模式识别专委会委员、信息学奥赛科学委员会委员,北京市科协青少年科技教育协会副理事长。她担任ACM/ICPC国际大学生程序设计竞赛亚洲区教练及竞赛指导委员会委员、北京大学ACM竞赛代表队领队,为推动ACM竞赛在北京大学、中国乃至亚洲的普及做了大量工作,2006年获ACM/ICPC组织颁发的“区域发展杰出贡献奖”。由她组织、为训练ACM队员而开发的北京大学在线程序评测系统目前已成为国际同类网站中*有影响的几个网站之一(acm.pku.edu./JudgeOnline)。 郭炜,北京大学信息科学技术学院教师,北京大学ACM国际大学生程序设计竞赛队教练。精研算法,曾11次负责为ACM国际大学生程序设计竞赛亚洲区预选赛命题,是为此项赛事主持命题次数*多的人。他具有十余年的C 教学经验,曾独立开发多种流行的商业软件(如《我爱背单词》、《我爱学语法》、《我爱学音标》),2012年独立编写出版《新标准C 程序设计教程》(978—7—302—28380一5)。 刘家瑛 博士,北京大学计算机科学技术研究所副教授。2010年6月毕业于北京大学计算机应用技术专业,获理学博士学位。2007—2008年,赴美国南加州大学多媒体通信实验室任访问学者。2015年,受铸星计划支持于微软亚洲研究院担任访问研究员。研究领域包括图像/视频表示、压缩与增强重建、计算机视觉与理解等。在国际重要期刊和会议上发表学术论文近80篇,申请国家发明40多项,其中13项已获得授权。曾获得“北京大学青年教师教学基本功比赛”一等奖、教学信息化先进个人、北京大学教学**奖。 |
| 目录 | |
| 章 绪论 1.1 什么是算法 1.2 算法的时间复杂度 1.3 算法时间复杂度分析示例 1.4 PKU 0penJudge在线评测系统 1.5 本章小结第2章 简单计算与模拟 2.1 基本思想 2.2 例题:鸡兔同笼(POJ 3237) 2.3 例题:校门外的树(POJ 2808) 2.4 例题:装箱问题(POJ 1017) 2.5 例题:约瑟夫问题(POJ 2746) 2.6 例题:显示器(POJ 2745) 2.7 例题:排列(POJ 1833) 2.8 本章小结 2.9 练习题 习题2一1:与7无关的数(POJ 2701) 习题2-2:细菌繁殖(POJ 2712) 习题2-3:判断闰年(POJ 2733) 习题2-4:求一兀二次方程的根(PoJ 2707) 习题2-5:合唱队形(POJ 2711)第3章 枚举 3.1 基本思想 3.2 例题:问题(POJ 2692) 3.3 例题:生理周期(POJ 4148) 3.4 例题:立方(POJ 2810) 3.5 例题:熄灯问题(POJ 2811) 3.6 例题:讨厌的青蛙(POJ 2812) 3.7 本章小结 3.8 练习题 习题3-1:数字三元组(POJ 4146) 习题3-2:质数的和与积(POJ 4138) 习题3-3:不定方程求解(POJ 4139) 习题3-4:砝码称重(POJ 4141) 习题3-5:垃圾炸弹(POJ 4133)第4章 递归 4.1 基本思想 4.2 例题:汉诺塔问题 4.3 例题:小游戏(POJ 2802) 4.4 例题:棋盘分割(POJ 1191) 4.5 例题:八皇后问题(POJ 2754) 4.6 例题:文件结构“图”(POJ 2775) 4.7 例题:算24(POJ 2787) 4.8 例题:汉诺塔问题利用栈替代递归的解法 4.9 本章小结 4.10 练习题 习题4-1:斐波那契数列(POJ 2753) 习题4-2:求大公约数问题(POJ 3248) 习题4-3:分解因数(POJ 2749) 习题4-4:逆波兰表达式(POJ 2694) 习题4-5:括号匹配问题(POJ 3704)第5章 二分查找 5.1 基本思想 5.2 例题:方程求解(POJ 4140) 5.3 例题:在线翻译(POJ 2503) 5.4 例题:快速找到和为零的四个数(POJ 3441) 5.5 例题:疯牛(POJ 2456) 5.6 例题:弯曲的木杆(POJ 1905) 5.7 例题:放弃考试(POJ 4145) 5.8 本章小结 5.9 练习题 习题5-1:查找接近的元素(PoJ 4134) 习题5-2:二分法求函数的零点(POJ 4142) 习题5-3:和为给定数(POJ 4143) 习题5-4:月度开销(POJ 4135) 习题5-5:矩形分割(PoJ 4136)第6章 贪心算法 6.1 基本思想 6.2 例题:圣诞老人的礼物(POJ 4110) 6.3 例题:电池的寿命(POJ 3468) 6.4 例题:建立雷达(POJ 1328) 6.5 例题:田忌赛马(POJ 2287) 6.6 例题:钓鱼(POJ 1042) 6.7 例题:畜栏保留问题(POJ 4144) 6.8 本章小结 6.9 练习题 习题6-1:金银岛(POJ 2795) 习题6-2:短前缀(POJ 2797) 习题6-3:书架(POJ 3406) 习题6-4:小新整数(POJ 4137) 习题6-5:拼点游戏(POJ 4005)第7章 动态规划 7.1 基本思想 7.2 动态规划解题的一般思路 7.3 例题:长上升子序列(POJ 2533) 7.4 例题:长公共子序列(POJ 1458) 7.5 例题:CIlarm Bracelet(POJ 4131) 7.6 例题:滑雪(POJ 1088) 7.7 例题:灌溉草场(POJ 2373) 7.8 例题:方盒游戏(POJ 1390) 7.9 例题:美妙栅栏(POJ 1037) 7.10 本章小结 7.11 练习题 习题7-l:简单的整数划分问题(POJ 4117) 习题7-2:开餐馆(POJ 4118) 习题7-3:复杂的整数划分问题(PoJ 4119) 习题7-4:硬币(POJ 4120) 习题7-5:宠物小精灵之收服(POJ 4102) 习题7-6:股票买卖(POJ 4121) 习题7-7:切割回文(POJ 4122)第8章 深度优先搜索 8.1 基本思想 8.2 例题:城堡问题(POJ 2815) 8.3 例题:ROADS(POJ 1724) 8.4 例题:生日蛋糕(POJ 1190) 8.5 例题:sticks(POJ 1011) 8.6 本章小结 8.7 练习题 习题8-1:踩方格(POJ 4103) 习题8-2:棋盘问题(POJl321) 习题8-3:马走日(POJ 4123) 习题8-4:海贼王之航路(PoJ 4124) 习题8-5:DNA(POJ 4126)第9章 广度优先搜索 9.1 基本思想 9.2 例题:Catch That cow(POJ 4001) 9.3 例题:拯救行动(POJ 4116) 9.4 例题:鸣人和佐助(POJ 4115) 9.5 例题:八数码(POJ 1077) 9.6 双向广度优先搜索 9.7 本章小结 9.8 练习题 习题9-1:迷宫问题(POJ 4127) 习题9-2:单词序列(POJ 4128) 习题9-3:变换的迷宫(POJ 4129) 习题9-4:Flip Game(POJ 1753) 习题9-5:SavingTang Monk(POJ 4130) 习题9-6:Jack and Jill(POJ 1729) |
| 编辑推荐 | |
| 算法是程序设计的灵魂,代表着用系统的方法描 述解决问题的策略与机制。刘家瑛、郭炜、李文新编 *的《算法基础与在线实践》将介绍简单模拟、枚举 、递归、二分、贪心、动态规划和搜索等经典算法, 带领读者体会它们巧妙的构思,感受利用它们解决问 题的独特魅力。本书不仅讲解这些算法的基本原理思 想,还通过具体例题对这些算法进行灵活、有效的展 开和准确实现。本书中涉及的编程任务将充分训练读 者的思维能力和动手能力,促成全面、缜密思考问题 的习惯。 本书可作为高等学校计算机等相关专业算法设计 类课程的教材,也可供对算法设计、程序设计竞赛感 兴趣的读者自学使用。 |
| 文摘 | |
| 序言 | |
我是一名有一定编程基础,但想系统性梳理算法知识的开发者。过去,我更多的是在实际项目中遇到问题时,才去查阅相关的算法资料,这种碎片化的学习方式导致我对算法的整体脉络不够清晰,也经常在解决复杂问题时感到力不从心。这本书的出现,恰好填补了我的这一知识空白。它不仅仅罗列算法,而是将算法的产生背景、设计思想、时间空间复杂度分析,以及其在实际应用中的典型场景,都做了非常详尽的阐述。更让我印象深刻的是,它引入的“在线实践”部分,不仅仅是简单的习题,而是根据算法的难度和应用广度,精心挑选了具有代表性的题目,并且提供了非常详细的解题思路和多种解法,这对于我这种追求更优解的人来说,简直是宝藏。我尤其喜欢书中关于动态规划和图论部分的处理,讲解深入浅出,案例丰富,让我对这些曾经觉得困难的领域有了全新的认识。通过在线调试和验证,我能更直观地感受到算法的魅力,也更能理解书本理论背后的实际意义。
评分作为一个长期混迹于各种算法竞赛的“老油条”,我拿到这本书时,本以为会是市面上那些泛泛之谈,但《算法基础与在线实践》的质量远超我的预期。首先,它的内容编排非常合理,从基础的排序、查找,到进阶的图论、动态规划,再到一些更具挑战性的算法,覆盖面非常广,而且逻辑性极强,能让你感受到算法知识体系的连贯性。其次,书中对算法的分析可谓是“庖丁解牛”式,不仅仅是给出代码,更重要的是深入剖析了算法的“为什么”和“怎么做”,包括了各种证明和优化技巧,这些对于提升算法的深度理解和解题效率至关重要。最让我惊喜的还是“在线实践”这个模块,它精心设计了一系列不同难度、不同类型的在线题目,并且很多题目都与书中的算法讲解紧密结合,这极大地降低了从理论到实践的门槛。我尝试了几道竞赛级的题目,通过书中提供的解题思路和参考代码,我不仅解决了问题,还学到了不少巧妙的解法。这本书无疑会成为算法竞赛爱好者们的案头必备。
评分这本《算法基础与在线实践》真是让我爱不释手!作为一名正在努力提升编程技能的初学者,我之前一直对算法这个概念感到畏惧,总觉得它高深莫测,难以企及。市面上很多算法书籍要么过于理论化,要么代码示例陈旧,让我无从下手。但这本书的出现,彻底改变了我的看法。它以一种非常平易近人的方式,从最基础的概念讲起,循序渐进地引导我认识各种经典的算法。书中的讲解清晰易懂,即使是初学者也能很快理解。更重要的是,它非常强调“在线实践”这个环节。书本内容紧密结合了在线OJ(在线评测系统)的题目,这意味着我不仅能学到理论,还能立刻动手去尝试,通过提交代码、调试错误来加深理解。这种“学以致用”的学习模式,让我感觉自己不再是孤军奋战,而是有了一个强大的实践平台作为后盾。每一次成功解决一道题目,那种成就感都激励着我继续探索算法的奥秘。我已经迫不及待地想把书中的每一个算法都融会贯通,并通过在线实践来检验自己的学习成果。
评分坦白讲,我购买这本书的初衷是想给我的学生准备一些课程材料,但没想到自己也被深深吸引住了。这本书的语言风格非常严谨又不失亲切,对于复杂的算法概念,作者们用非常清晰的比喻和图示来辅助讲解,使得即便是对计算机科学完全陌生的读者,也能逐渐建立起对算法的基本认知。我特别欣赏书中对“思维过程”的强调,它不仅仅告诉你“是什么”,更重要的是教会你“怎么去想”,如何分析问题、拆解问题,并从中提炼出算法的解决方案。在线实践部分,更是将理论与实践无缝对接。学生们可以通过书本学习算法原理,然后立刻在配套的在线平台上进行模拟练习,反馈及时,错误分析也很到位,这对于培养学生的独立思考和解决问题的能力有着巨大的帮助。我想,这本书一定能在很大程度上提升学生的算法学习兴趣和实际操作能力,为他们将来的学术或职业生涯打下坚实的基础。
评分作为一个对计算机算法充满好奇,但又常常被“劝退”的跨领域学习者,我一直寻找一本既能系统性地介绍算法,又能真正让我“玩起来”的书。《算法基础与在线实践》正是我苦苦寻觅的那一本。这本书的强大之处在于,它并没有把算法包装得高高在上,而是从最基本、最直观的角度出发,层层递进。书中的概念解释非常到位,每一个算法的出现都有其历史背景和解决问题的初衷,这让我更容易理解算法的价值所在。而“在线实践”的设计,更是让我这种“动手型”的学习者欣喜若狂。我不再是孤军奋战,而是可以跟随书本的引导,在真实的编程环境中一次次地尝试、调试、优化。书中提供的丰富题目,涵盖了从入门到进阶的各种类型,每一次提交成功,都给我带来了巨大的学习动力。这本书不仅让我掌握了算法知识,更重要的是,它让我爱上了用算法解决问题的过程,这种学习体验是无与伦比的。
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 book.qciss.net All Rights Reserved. 图书大百科 版权所有