“珠玑之椟”系列简介与索引

简介:

系列博文主要目的:

  收集《编程珠玑》和《编程珠玑(续)》(以下简称《续》)上的算法和思想,并包括了一些自己的思考和对相关问题的引申,以备复习和查用。

内容提要:

  主要是算法收集,结合了《程序设计实践》 (Practise of Programming)、《编程精粹:编写高质量C语言代码》(Writing solid code)和《算法导论》的部分相关内容,以及自己的思考,无论你是否看过原书,都能够帮助你快速理解以至于能够独立完成这些算法。我相信自己写的解释比原书详细而易于理解,并且根据我的经验,对很多问题进行了扩展,这也是这个系列命名为“珠玑之椟”的原因。当然,“买椟还珠”是不可取的,这个系列虽然收录了绝大部分有价值的内容,但部分和话题相关但和算法关系不大的有趣内容限于本人时间有限,只好舍掉。建议时间富足的读者尽量阅读原书,并把这个系列的博文当做参考资料。

  出自于《编程珠玑》和《续》原书的算法题和习题有标示。

  本系列博文已经写完,预计1~3天发布一篇,目前(2013.7.8)已发完。

 

索引链接:

  位向量/位图的定义和应用

  估算的应用与Little定律

  随机数函数取样与概率

  浅谈代码正确性:循环不变式、断言、debug

  二分思想与分治法、排序思想

  字符串和数组算法:左移、哈希表、最长重复子序列的后缀数组解法、最大连续子序列

 

原书有但未收录的内容介绍:

1.基础的数据结构

  二分查找树

2.较少使用的数据结构

  箱

3.基本的排序

  插入排序、希尔排序、快速排序

4.堆和优先级队列

  个人更倾向于使用《算法导论》上介绍的版本

5.马尔科夫链文本生成器

  利用马尔科夫链的性质,经过文本训练,能够产生一段自然的随机文本的程序。

  与《程序设计实践》相比,由于使用了更精巧的数据结构,占用空间较少,但也更难理解。

6.以二分查找(第9章)和质数查找(《续》第1章)为例的代码调优

7.位排序算法

  类似strcmp(),可查阅习题11.5

8.拓扑排序

  第2章,伪代码:

initialize a queue to empty

for each node i

  if pre count of i is 0

    insert i to queue

while queue is not empty

  delete t from the front of queue

  print t

  for each successor s of t

    decrement pred count of s

    if the count is 0

    insert s to queue

 《算导》上的拓扑排序比这个略难理解一些,因为它为了说明,引入了结束时间的概念。

9.关联数组

  介绍的是Awk语言的特性,如今的C++里的map容器还有像Python里的字典有类似的作用。

10.以牛顿迭代法为代表的数值分析(《续》第14章)






本文转自五岳博客园博客,原文链接:http://www.cnblogs.com/wuyuegb2312/p/3133492.html,如需转载请自行联系原作者

目录
相关文章
|
23小时前
|
Python
二分查找变种大赏!Python 中那些让你效率翻倍的搜索绝技!
二分查找是一种高效的搜索算法,适用于有序数组。其基本原理是通过不断比较中间元素来缩小搜索范围,从而快速找到目标值。常见的变种包括查找第一个等于目标值的元素、最后一个等于目标值的元素、第一个大于等于目标值的元素等。这些变种在实际应用中能够显著提高搜索效率,适用于各种复杂场景。
16 9
|
6月前
|
关系型数据库 MySQL
Mysql基础第八天,排序检索数据
Mysql基础第八天,排序检索数据
43 1
|
6月前
|
关系型数据库 MySQL
Mysql基础第十五天,汇总数据
Mysql基础第十五天,汇总数据
37 0
|
6月前
|
算法
刷题专栏(二十一):区域和检索 - 数组不可变
刷题专栏(二十一):区域和检索 - 数组不可变
112 1
|
存储 编译器
IAT表入门简析【滴水逆向三期52笔记】
IAT表入门简析【滴水逆向三期52笔记】
|
机器学习/深度学习 存储 人工智能
数据结构 | 十大排序超硬核八万字详解【附动图演示、算法复杂度性能分析】
🔥十大排序算法整理汇总🔥每个排序均附带动图展示、代码分析、性能测试,带你从头至尾彻底搞懂排序算法
155 0
数据结构 | 十大排序超硬核八万字详解【附动图演示、算法复杂度性能分析】
|
存储 算法
代码随想录算法训练营第七天 | 哈希表
代码随想录算法训练营第七天 | 哈希表
126 0
|
存储 算法 索引
代码随想录算法训练营第六天 | 哈希表 四道简单题
代码随想录算法训练营第六天 | 哈希表 四道简单题
95 0
|
存储 算法 C语言
数据结构第十一周笔记—— 散列查找 (慕课浙大版本--XiaoYu)(二)
数据结构第十一周笔记—— 散列查找 (慕课浙大版本--XiaoYu)(二)
120 0
下一篇
无影云桌面