
编程珠玑
文章平均质量分 81
逆風的薔薇
这个作者很懒,什么都没留下…
展开
-
《编程珠玑》阅读小记(3) — 数据决定数据结构
本章简述本章以一个庞杂的 if 判断程序段落提出主题,对于这种代码冗余量大,相似性高的程序结构应该考虑用合适的数据结构(比如数组)来达到相同的目的。 由此,引出本章标题的完整意义:恰当的数据视图实际上决定了程序的结构。结构化数据本章用了大量篇幅介绍复杂程序的庞杂代码量的不合理性,使得读者可以深入的理解并牢记,在以后写程序时能够避免再次写出类似代码。 作者在第四小节,提出结构化数据的概念。结构化数原创 2015-06-06 17:20:17 · 833 阅读 · 0 评论 -
《编程珠玑》阅读小记(11) — 堆
章节简述本章主要介绍堆,用该数据结构解决下面两个重要的问题:排序,采用堆排序算法对n元数组排序,所花的时间不会超过O(nlogn),而且只需要几个字的额外空间;优先级队列,堆通过插入新元素和提取最小元素这两种操作来维护元素集合,每个操作所需的时间都为O(logn);本章采用自底向上的组织结构,从细节开始逐步过渡到正题。堆数据结构该部分介绍堆数据结构的设计思想。原创 2015-06-19 16:54:50 · 1073 阅读 · 0 评论 -
《编程珠玑》阅读小记(9) — 取样问题
问题本章研究的问题是取样问题,也就是程序设计中的随机数,问题描述如下: 程序的输入包含两个整数m和n,其中 m < n;输出是0~n-1范围内m个随机整数的有序列表,不允许重复。从概率的角度看,我们希望没有重复的有序选择,其中每个选择出现的概率相等。 条件假设: 我们假设有一个能返回很大的随机整数(远远大于m 和 n )的函数bigrand(),以及一个能返回i…j范围内均匀选择的随机整数的r原创 2015-06-15 20:26:43 · 1040 阅读 · 0 评论 -
《编程珠玑》阅读小记(5) — 编程小事
本章简述阅读完1-4章节内容之后,我们应该已经做了一切该做的事:通过深入挖掘定义了正确的问题,通过仔细选择算法和数据结构平衡了真正的需求,通过程序验证技术写出了优雅的伪代码,并且对其正确性相当有把握。那么如何将这些成果合并到你的大系统中呢?万事俱备,只欠编程小事了~~ (⊙o⊙)… 编程是小事呢? 加油呗,争取让它真正的成为不起眼的小事~~从伪代码到C程序本章着重从第四章的二分搜索程序实现为可靠的原创 2015-06-09 11:40:33 · 741 阅读 · 0 评论 -
《编程珠玑》阅读小记(6) — 算法设计技术
本章简述通过前面第二章节的叙述,描述了算法设计对程序员的日常影响:算法上的灵机一动可以使程序更加简单。但是本章内容将会发现算法设计的一个不那么常见但更富于戏剧性的贡献:复杂深奥的算法有时可以极大地提高程序性能。问题及简单算法本章引入的问题来自一维的模式识别,问题的输入是具有n个浮点数的向量x,输出是输入向量的任何连续子向量中的最大和。 例如,如果输入向量包含以下 N = 10 个元素: arr[原创 2015-06-11 16:20:53 · 1118 阅读 · 0 评论 -
《编程珠玑》阅读小记(7) — 代码调优与节省空间
第九章 代码调优前面各个章节深入讨论了提高效率的高层次算法:问题定义、系统结构、算法设计与数据结构选择。接下来这个章节讨论低层次方法 — 代码调优。原创 2015-06-12 11:01:41 · 707 阅读 · 0 评论 -
《编程珠玑》阅读小记(10) — 搜索
问题描述本章是围绕着搜索问题展开讨论的,搜索问题形形色色。编译器查询变量名以得到其类型和地址,拼写检查器查字典以确保单词拼写正确,电话号码簿程序查询用户名以得到其电话号码,因特网域名服务器查找域名来发现IP地址,上述引用以及很多类似的应用都需要搜索一组数据,以找到与特定项相关的信息。 本章继续讨论上一章的问题:生成[0,maxval]范围内m个随机整数的有机序列,不允许重复。 定义了5个数据结构原创 2015-06-16 15:40:38 · 865 阅读 · 0 评论 -
《编程珠玑》阅读小记(1)— 开篇
1. 前言久闻《编程珠玑》一书的大名,一直没有找到合适的机会深入学习阅读,最近终于得以入手,便决心投入细细的研究,提升一下自己的编程思想与技术。阅读之后才发现,这本书确实一本不可多得的好书。它以计算机领域应用与编程算法相结合,让读者面对实际问题时,不单单局限于考虑该问题的解决方案,而是在入手实践之前能够驻足于考虑,该方案是否符合当前的实际环境,它的时间与空间的消耗是否达到了一个比较好的指标。 通过原创 2015-06-05 15:26:14 · 1321 阅读 · 0 评论 -
《编程珠玑》阅读小记(4) — 编写正确的程序
本章简述原创 2015-06-08 16:06:32 · 1034 阅读 · 0 评论