《编程珠玑(英文版・第2版)》的原文摘录

  • 位图或位向量表示集合 (查看原文)
    随候鸟南飞 1回复 2012-09-19 23:33:28
    —— 引自第6页
  • 习题2:如何使用位逻辑运算来实现位向量? (查看原文)
    随候鸟南飞 2回复 1赞 2012-09-20 00:17:34
    —— 引自第7页
  • 他们估计那些经过极度调优的代码(具有谨慎的寄存器分配和指令选择)的规模只有从高级语言编译过来的等价代码的一半(尽管那时编译器已经有了很大的改进)。紧凑的汇编代码运行起来也非常快。 (查看原文)
    孔明 1赞 2015-06-16 21:55:42
    —— 引自第103页
  • 我错就错在马上回答了这个问题。 (查看原文)
    见龙在田 1赞 2022-06-19 21:32:40
    —— 引自章节:1.1 一次友好的对话 3
  • 程序员的主要问题与其说是技术问题,还不如说是心理问题:他不能解决问题,是因为他企图解决错误的问题。问题的最终解决,是通过打破他的概念壁垒。 (查看原文)
    见龙在田 1赞 2022-06-19 21:32:40
    —— 引自章节:1.7 深入阅读 9
  • Rework repeated code into arrays. A long stretch of similar code is often best expressed by the simplest of data structures,the array. Encapsulate complex structures. When you need a sophisticated data structure,define it in abstract terms,and express those operations as a class. Use advanced tools when possible. Hpertext,name-value pairs,spreadsheets,databases,languages and the like are powerful tools within their specialized problem domains. Let the data structure the program. The theme of this column is that data can structure a program by replacing complicated code with an appropriate data structure.Although the particulars change,the theme remains:before writing code,good programmers thoroughly understand the input,the output and the intermediate data strutures aroud which theri p... (查看原文)
    Single Bit 2011-04-01 22:03:28
    —— 引自第29页
  • from[i]<top并且to[from[i]]=i (查看原文)
    邻家の躺平人 2011-04-10 09:14:23
    —— 引自第197页
  • 第九题:顺序搜索和二分搜索代表了搜索时间和预处理时间的折中。处理一个n元表格时,需要执行多少次二分搜索才能弥补排序带来的消耗? (查看原文)
    邻家の躺平人 2011-06-20 17:31:12
    —— 引自第18页
  • 算得两个日期在相应年份中的编号,用后者减去前者,再加上年份之差的365倍,再为每一个闰年加上1 (查看原文)
    邻家の躺平人 2011-07-20 19:18:27
    —— 引自第30页
  • function exp(x, n) if n = 0 return 1 else if even(n) return square(exp(x, n/2)) else return x*exp(x, n-1) (查看原文)
    邻家の躺平人 1赞 2011-07-23 21:02:32
    —— 引自第42页
  • 分析中,令cum[i]=x[0]+x[1]+x[2]+...+x[i],那么如果cum[l-1] = cum[u],则说明 x[l]+x[l+1]+...+x[u] = 0,然后对cum数组排序,找到相邻最接近的元素即可 (查看原文)
    邻家の躺平人 2011-08-03 23:30:19
    —— 引自第206页
  • 求数组最大元素的递归算法中,如果用宏max替代函数max,复杂度会有什么变化? #define max(a,b) ((a) > (b) ? (a) : (b)) (查看原文)
    邻家の躺平人 6回复 2011-08-08 11:42:29
    —— 引自第93页
  • p7 开篇问题示范的普遍原则: 1,恰当的问题 2,位图数据结构 3,多轮(multiple pass) 4,时间和空间的权衡 5,简单的设计 6,程序设计阶段 p37 程序验证: 1,断言,输入、变量、输出之间的关系 断言很重要 2,迭代控制结构 证明循环的正确性:初始化、中间过程、终止都满足条件。并用数学归纳法证明中间所有步骤都满足条件。 3,函数: 进入和返回值是否满足条件和所需功能 p64 估算技巧 1,72法则 时间是y,年利率是r%,如果r×y=72,则投入的钱会翻番 2,一年有pi×10^7秒 p79 一维最大和子序列问题的启示 1,保存状态,避免重复计算 2,将信息预处理到数据结构中 3,分治算法 4,动态规划算法,能不能将子问题的最优解扩展 5,累积,在处理范围时,累积从头开始的和从而求得中间的范围和 6,下限,证明算法的下限 p91 代码优化 1,%运算开销大约是算术运算的10倍 2,如果程序的大部分时间花在访问内存上,那么企图减少计算时间是毫无用处的。 3,展开循环可以加速代码,因为减少了对循环变量的赋值 4,保存数组最末尾的元素,可以在for循环中取消测试是否达到数组尾的条件,从而加速 5,将三角函数的使用用几何计算代替 6,用宏代替函数,可以加速过程层次从而加速 7,设法减少分页和增加高速缓存命中率 p103 数据空间技术 1,稀疏数据结构 用数组实现稀疏矩阵 2,数据压缩 压缩的编码方式 3,动态空间分配 4,垃圾回收 5,压缩程序空间 (1)使用函数 (2)用解释器替换长的程序文本 6,转换成机器语言 p112 循环不变式 设计循环时,列出循环每一步时都满足的条件。 p116 排序 1,c++库sort的效率很高 2,一端扫描的简单快排在所有元素都相同时,时间复杂度n^2 3,两端扫描的快排在上述情况下仍是nlogn,但增加了交换... (查看原文)
    [已注销] 2012-09-09 16:44:11
    —— 引自第217页
  • 如何使用位逻辑运算(例如与、或、移位)来实现位向量? (查看原文)
    ziyoudefeng 1回复 2012-12-27 15:19:30
    —— 引自第7页
  • 将重复性代码改写到数组中。 封装复杂的结构。 尽可能地使用高级工具。 让数据去构造程序。 (查看原文)
    Jimmy Sun 2013-01-22 20:07:12
    —— 引自第28页
  • 几个重要的算法设计技术: 1 保存状态,避免重新计算 2 将信息预处理到数据结构中 3 分治算法 4 扫描算法(有关数组的问题可以通过提问“如何将x[0...i-1]的解决方案扩展为x[0...i]的解决方案?”得到解决) 5 累积 6 下限 (查看原文)
    Jimmy Sun 2013-02-21 10:49:10
    —— 引自第79页
  • 假设以年利率r%投资一笔钱y年,金融版本的72法则指出,如果r*y=72,那麽你的投资差不多会翻倍。该近似相当精确:以年利率6%投资1000美元12年,可得到2012美元;一年利率8%投资1000美元9年,可得到1999美元。 72法则用于估算指数过程的增长非常便利,如果一个盘子里的菌群以每小时3%的速率增长,那麽其数量每天都会翻倍。翻倍使程序员回忆起了熟悉的经验法则:由于2^10=1024,10次翻倍大约是1000倍,20次翻倍大约是100万倍,30次翻倍大约是10亿倍。 假设一个指数程序解决规模为n=40的问题需要10秒的时间,并且n每增加1运行时间就增加12%。72法则告诉我们,n每增加6,运行时间就加倍。或者n每增加60,运行时间就增加为原来的1000倍。。。 (查看原文)
    實習生 2013-09-07 16:51:08
    —— 引自第65页
  • 考虑一个带有输入和输出的任意系统,Little定律指出“系统中物体的平均数量等于物体离开系统的平均速率和每个物体在系统中停留的平均时间的乘积。” (查看原文)
    實習生 2013-09-07 17:02:49
    —— 引自第69页
  • 这个地方可以容纳约60人,每个人在里面逗留时间大约是3小时,因此我们进入夜总会的速率大概是每小时20个人。 (查看原文)
    實習生 2013-09-07 17:02:49
    —— 引自第69页
  • 地下室有150箱酒,每年喝掉25箱并买入25箱,那麽每箱酒保存的时间是多长?Little定律告诉我们是6年。 (查看原文)
    實習生 2013-09-07 17:02:49
    —— 引自第69页
<前页 1 2 后页>