上一页 1 ··· 15 16 17 18 19 20 21 22 23 ··· 35 下一页
摘要: 1.4.40随机输入3-sum问题。猜测找出N个随机int值中和为0的整数三元组的数量所需时间并验证你的猜想。如果你擅长数学分析,请为此问题给出一个合适的数学模型,其中所有值均匀地分布在-M到M之间,且M不能是一个小整数。答:1)猜测找出N个随机int值的3sum数需要的时间为:T(N)=8.62* 阅读全文
posted @ 2018-10-26 09:35 修电脑的龙生 阅读(212) 评论(0) 推荐(0) 编辑
摘要: 1.4.39 改进倍率测试的精度。修改DoublingRation,使它接受另一个命令行参数来指定对于每个N值调用timeTrial()方法的次数。用程序对每个N执行10、100和1000遍实验并评估结果的准确程度。答:public class E1d4d39{ public static doub 阅读全文
posted @ 2018-10-26 09:33 修电脑的龙生 阅读(134) 评论(0) 推荐(0) 编辑
摘要: 1.4.38 3-sum的初级算法的实现。通过实验评估以下ThreeSum内循环的实现性能:for(int i=0;i<N;i++) for(int j=0;j<N;j++) for(int k=0;k<N;k++) if(i<j && j<k) if(a[i]+a[j]+a[k]==0) cnt+ 阅读全文
posted @ 2018-10-26 09:30 修电脑的龙生 阅读(235) 评论(0) 推荐(0) 编辑
摘要: 1.437自动装箱的性能代价。通过实验在你的计算机上计算使用自动装箱和自动拆箱所付出的性能代价。实现一个FixedCapacityStackOfInts,并使用类似DoublingRatio的用例比较它和泛型FixedCapacityStack<Integer>在进行大量push()和pop()操作 阅读全文
posted @ 2018-10-26 09:29 修电脑的龙生 阅读(186) 评论(0) 推荐(0) 编辑
摘要: 1.4.35下压栈的时间成本。解释下表中的数据,它显示了各种下压栈的实现的一般时间成本,其中成本模型会同时记录数据引用的数量(指向被压入栈之中的数据引用,指向的可能是数组,也可能是某个对象实例变量)和被创建的对象数量。1)基于链表的int元素类型,压入N个值的成本中,每个Node对象有一个item引 阅读全文
posted @ 2018-10-26 09:28 修电脑的龙生 阅读(293) 评论(0) 推荐(0) 编辑
摘要: 1.4.36下压栈的空间成本。解释下表中数据,它显示了各种下压栈的实现的一般空间成本,其中链表的节点为一个静态嵌套类,从而避免非静态嵌套类的开销。1)基于链表的int元素类型,N个值时需要N个Node,每个Node需要16字节的对象开销+两个8字节的引用,一共32字节,N个Node需要32N字节。2 阅读全文
posted @ 2018-10-26 09:28 修电脑的龙生 阅读(206) 评论(0) 推荐(0) 编辑
摘要: 1.4.34热还是冷。你的目标是猜出1到N之间的一个秘密的整数。每次猜完一个整数后,你会知道你的猜测和这个秘密整数是比较热(接近)还是比较冷(远离)。设计一个算法在~2lgN之内找到这个秘密整数,然后再设计一个算法在~1lgN之内找到这个秘密整数。答:解决2lgN中的不得不在每一次猜两个数就实现了l 阅读全文
posted @ 2018-10-26 09:26 修电脑的龙生 阅读(416) 评论(0) 推荐(0) 编辑
摘要: 1.4.34热还是冷。你的目标是猜出1到N之间的一个秘密的整数。每次猜完一个整数后,你会知道你的猜测和这个秘密整数是比较热(接近)还是比较冷(远离)。设计一个算法在~2lgN之内找到这个秘密整数,然后再设计一个算法在~1lgN之内找到这个秘密整数。答:1)猜12)猜N3)3.1)如果秘密数是1,猜中 阅读全文
posted @ 2018-10-26 09:25 修电脑的龙生 阅读(259) 评论(0) 推荐(0) 编辑
摘要: 1.4.33 32位计算机中的内存需求。给出32位计算机中Integer、Date、Counter、int[]、double[]、double[][]、String、Node和Stack(链表表示)对象所需的内存、设引用需要4字节,表示对象开销为8字节,所需内存均会被填充为4字节的倍数。答:Inte 阅读全文
posted @ 2018-10-26 09:24 修电脑的龙生 阅读(169) 评论(0) 推荐(0) 编辑
摘要: 1.4.32均摊分析。请证明,对一个基于大小可变的数组实现的空栈的M次操作访问数组的次数和M成正比。答:设N为2的幂 1)连续N次的push操作均摊后每次push操作访问数组的次数 设数组长度为L,一次延长需要的数组访问次数为:初始化2L长度的数组需要将数组元素置初值,需要2L次写操作。将原数组中L 阅读全文
posted @ 2018-10-26 09:22 修电脑的龙生 阅读(405) 评论(0) 推荐(0) 编辑
上一页 1 ··· 15 16 17 18 19 20 21 22 23 ··· 35 下一页