
《程序员实用算法》源代码
- 大小:1.62 MB
- 类型:算法
- 格式:PDF
- 出版:机械工业出版社
- 作者:Andrew、Binstock;、John、Rex
- 更新:2022-09-08 09:33:40

本站收集了一篇算法类书籍配套资源,介绍了关于程序员、程序员算法、源代码、算法方面的内容,本书是由机械工业出版社出版,已被901人关注,由茹翠曼测试纠错,目前本书在算法类综合评分为:7.7分。
算法资源推荐
- 程序员软技能 PDF 电子书 / 49.5 MB / 唐·琼斯(Don Jones) 推荐度:
- Java程序员面试笔试真题库 PDF 电子书 / 291.9 MB / 猿媛之家 推荐度:
- Android开发关键技术之旅:Java程序员快速学习通道 PDF 电子书 / 67.01MB / 颜建华 推荐度:
资源介绍
本书重点关注的是实用、立即可用的代码,并且广泛讨论了可移植性和特定于实现的细节。本书作者介绍了一些有用但很少被讨论的算法,它们可用于语音查找、日期和时间例程(直到公元1年)、B树和索引文件、数据压缩、任意精度的算术、校验和与数据验证,并且还最全面地介绍了查找例程、排序算法和数据结构。
数据结构与算法是计算机专业的核心课程,是计算机软件开发和应用人员必备的专业基础。今天的大多数关于算法的图书都是大学教科书,或者是令人厌倦的相同算法集合改头换面后的作品。本书是给出所有算法的完整代码实现的第一本书,这些算法对于开发人员在其日常工作中是有用的。
本书介绍了关于算法的基础知识、基本数据结构、散列、查找、排序、树、日期和时间、任意精度的算术运算、数据压缩以及数据完整性和验证等内容。本书的目的是为在应用程序中使用的算法提供一个实用的纲要。与关于算法的大多数著作不同的是,本书不是一本教材:书中没有提供实现细节,把它作为练习留给读者完成;也没有利用较小的代码段对算法进行高度理论化的讨论,以说明如何进行实现。相反,本书完全用C语言实现了各种算法,并且讨论了如何在各种应用程序中最佳地使用它们。
本书只要求读者具有C语言的初级知识以及不超出基本代数之外的数学知识。源代码是符合ANSI标准的,并且对它们进行了测试,它们都可以运行在UNIX下以及Borland、Microsoft和Watcom的编译器上。
封面图
目录
- 译者序
- 前言
- 致谢
- 第1章绪论
- 11评估算法
- 12修改算法
- 121主要的优化:I/O
- 122主要的优化:函数调用
- 13资源和参考资料
- 第2章基本数据结构
- 21链表
- 211双向链表
- 212链表的其他特征
- 22栈和队列
- 221栈的特征
- 222队列的特征
- 第3章散列
- 31散列的概念
- 32散列函数
- 33冲突解决方法
- 331线性再散列法
- 332非线性再散列法
- 333外部拉链法
- 34性能问题
- 35资源和参考资料
- 第4章查找
- 41查找的特征
- 411准备时间
- 412运行时间
- 413回溯的需要
- 42蛮力查找
- 43BoyerMoore查找
- 431启发式方法#1:跳过字符
- 432启发式方法#2:重复模式
- 44多字符串查找
- 45用于正则表达式的字符串
- 查找:grep
- 46近似字符串匹配技术
- 47语音比较:Soundex算法
- 48Metaphone:现代的Soundex
- 49选择技术
- 410资源和参考资料
- 4101通用参考资料
- 4102BoyerMoore
- 4103多字符串查找
- 4104正则表达式查找
- 4105近似字符串匹配
- 4106Soundex算法和Metaphone
- 算法
- 第5章排序
- 51排序的基本特征
- 511稳定性
- 512对哨兵的需求
- 513对链表进行排序的能力
- 514输入的阶的相关性
- 515对额外存储空间的需求
- 516内部排序技术与外部排序
- 技术
- 52排序模型
- 521冒泡排序
- 522插入排序
- 523希尔排序
- 524快速排序
- 525堆排序
- 53对链表进行插入排序
- 54对链表进行快速排序
- 55对多个键进行排序——不稳定
- 排序的修正方法
- 56网络排序
- 57小结:选择一种排序算法
- 58资源和参考资料
- 第6章树
- 61二叉树
- 611树查找
- 612节点插入
- 613节点删除
- 614二叉查找树的性能
- 615AVL树
- 62红黑树
- 63伸展树
- 64B树
- 641保持B树平衡
- 642实现B树算法
- 643B树实现的代码
- 65可以看见森林吗
- 66资源和参考资料
- 第7章日期和时间
- 71日期例程的库
- 72时间例程
- 73用于日期和时间数据的格式
- 74最后的提醒
- 75资源和参考资料
- 第8章任意精度的算术
- 81构建计算器82表示数字
- 83计算
- 84加法
- 85减法
- 86乘法
- 87除法
- 88关于计算器要注意的最后几点
- 89用于计算平方根的牛顿算法
- 810分期付款表
- 811资源和参考资料
- 第9章数据压缩
- 91行程编码
- 92霍夫曼压缩
- 921代码
- 922其他问题
- 93滑动窗口压缩
- 94基于字典的压缩(LZW)
- 941LZW算法的伪代码
- 942LZW压缩的实现
- 943填满字典
- 95使用哪种压缩方法
- 96资源和参考资料
- 第10章数据完整性和验证
- 101简单的校验和
- 102加权校验和
- 103循环冗余校验
- 1031CRCCCITT
- 1032CRC16
- 1033CRC32
- 104资源和参考资料
以上就是本次关于配套资源的介绍和部分内容,我们还整理了以往更新的其它相关电子书资源内容,可以在下方直接下载,关于相关的资源我们在下方做了关联展示,需要的朋友们也可以参考下。
算法相关资源
-
技术领导力:程序员如何才能带团队
程序员不会带团队,就只能一辈子写代码,虽然写代码并没有什么不好,但是大多数程序员不愿意这样过一生。 程序员要带团队,要成为技术团队的领导者,必须在技术和管理两个方面有所长
大小:130 MB程序员电子书
-
程序员软技能
编辑推荐 1.专为技术人员编写的职业生涯实用指南,详细介绍沟通能力、团队合作能力、冲突处理能力、领导力等14项软技能,针对性帮助新入职或者不得意的技术人轻松走上正轨。 2.作者唐琼斯是微软MVP、成功的IT教练、会议演讲者、职业导师,他领导了10余个职业和职业研讨会的科技专业人员,具有20余年的技术人职业规划实践经验。 3.章尾设置练习建议环节,帮助读者时刻回顾与检验所学知识;设置拓展阅读环节,鼓励读者延展知识库。 内容简介
大小:49.5 MB程序员
-
统计思维:程序员数学之概率统计
编辑推荐 推荐组合购买: 大数据革命风起云涌。数据分析成为每个浪尖上的舞者的必杀技。而统计思维是数据分析和数据挖掘的根基。 每个程序员都应该具备统计思维,看到本书你已经比别人先行一步。这是一本极为独特的统计思维入门图书。 独特的编程视角。对于主要的概率统计概念,作者都给出了开源的代码示例,其新颖独特的讲解方法可以让程序员对概率统计产生更深刻的认识。 幽默风趣的示例。你是否一直无法理解蒙提霍尔问题?庞加莱是
大小:10.2 MB程序员数学电子书
-
C/C++实践进阶之道:写给程序员看的编程书
本书是一本C/C 语言应用能力进阶的图书,包含99个经典实例与综合案例的透彻解析,具有很高的实用性和可读性,对于初级程序员和学习编程语言的大学生大有裨益
大小:281.7 MB编程设计电子书
-
Go程序员面试算法宝典
大小:122914 MB Go语言
-
程序员代码面试指南:IT名企算法与数据结构题目最优解
大小:3010 MB MB程序员面试
-
王道程序员求职宝典
这书选萃了很多大型企业的程序员笔试题目、面试问题,重中之重突显、解释详实。全书共分成四一部分,各一部分给出:首位一部分是程序设计基础及数据结构基本,探讨C/C++基本知识及其数
大小:108.7 MB求职电子书
-
Java程序员面试宝典
Java程序员面试宝典(第4版) 是《Java程序员面试宝典》的第4版。第4版在保留前三版数据结构、字符串处理、Java程序设计等主干内容的基础上,更新了部分程序员面试题目,内容主要取材于
大小:78.6 MBJava面试电子书