摘要: 第三版的CLRS改写了15.1.用一个rod cut问题代替了assembly-line问题。不过总觉得还没第2版讲得好啊。15.1-1Print-Station(l*, n). 如果n==2, print l_2[l*], 否则的话Print-Station(l_n[l*], n-1) print 'n station, l_n[l*] '15.1-2 Suppose \(r_1(j+1)=r_2(j+1)=2^{n-j-1}\)。带入公式15.9既得。15.1-3 all \(f_i[j]\) . 这个\(1+2+4+....2^{n-1}=2^n-1\) 乘2既得15.1 阅读全文
posted @ 2012-10-17 12:18 QED 阅读(302) 评论(0) 推荐(0) 编辑
摘要: 这章有道题目一直做不出来。。。。11.1-1 阅读全文
posted @ 2012-10-17 11:38 QED 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 我估计这章基本上所有的习题都要被我略过去了。2.1-1 略2.1-2 略2.1-3 略2.1-4 略2.2-1 略2.2-2 略2.2-3 略2.2-4 输出预先计算好的结果=。=2.3-1 略2.3-2 好麻烦=。=2.3-3 略2.3-4 recursive procedure:sort(A, n)if n > 1sort(A, n-1), 扫描,插入elsereturnend2.3-5 烂大街的二分查找。while(l<=r) i=(l+r)/2 if A[i]<x l=i+1, if A[i]>x r=i-1 A[i]==x返回2.3-6 No. 因为即使效率的 阅读全文
posted @ 2012-10-17 11:36 QED 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 10.1-1 略10.1-2 把这个数组的头和尾各当成一个stack就好了,如果一个stack在push的过程中发现已经有值了就说明放满了。 10.1-3 略10.1-4 ENQUE,DEQUE中只要判断一下是否有值,是否没有值就好了10.1-5 deque就不多说了10.1-6 两个栈实现一个队列。设栈A和栈B代表这个队列。如果向队列插入一个元素就是向栈A压入一个元素。出队列就是从栈B中弹出一个元素,如果B没有元素,就把A中的元素弹出再压入B。只是出队列的时间复杂度最坏有O(n).10.1-7 两个队列实现一个栈。入栈就是向一个队列插入。出栈就是从另外一个队列弹出。如果没有的话,就把另外一个 阅读全文
posted @ 2012-10-17 11:09 QED 阅读(702) 评论(0) 推荐(0) 编辑
摘要: Notes前面的排序都是基于比较排序,有时候不需要比较也可以排序。关键是那些东西有一个好的表示,比如说整数。用decision tree证明,\(\Omega(n \lg n)\)是所有比较排序算法的下界。决策树中间节点表示比较的两个东西,叶子节点表示元素的一个置换,决策树的每条边表示这个算法在这个节点获得的比较信息。每个置换至少出现一次,叶子的数目是n!个。不同算法有不同的决策树。比如最笨的最小值排序。它最短的path是这样的:1跟2~n比较的node –> 2跟3~n比较的node –> 。。。。而快排最短的path是,pivot和其他全部比较的n-1个node –> 中 阅读全文
posted @ 2011-08-07 21:12 QED 阅读(1212) 评论(0) 推荐(2) 编辑
摘要: 做题要猜出题目的意图。 7.1-1 略 7.1-2 r-1, add if q=r-1, then $q = \lfloor (p+r)/2 \rfloor$。这说明元素全都一样的时候,quicksort伤不起。worst-case了,要$\Theta(n^2)$了。快排弱点1. 7.1-3 pivot要比较所有的数组元素,自然是n 7.1-4 PARTITION中Line4的<= changed... 阅读全文
posted @ 2011-08-05 16:36 QED 阅读(3461) 评论(3) 推荐(0) 编辑
摘要: 看CLRS一般把笔记写在书的margin里。Cormen的提纲也是蛮好的,适合复习。这里用的Partition方法是Lomuto Partition,不是原始的也是第1版中的Hoare Partition。后者被留作习题。快排Quicksort的时间复杂度worst-case是\Theta(n^2), 期望时间是\Theta(nlgn), 复杂度前面的常数很小,sort in place。 Des... 阅读全文
posted @ 2011-08-05 14:38 QED 阅读(580) 评论(0) 推荐(0) 编辑
摘要: Exercises 6.1-1 2^h~2^{h+1}-1,如果root是第1个,而不是第0个。 6.1-2 设heap高度为h,2^h<=n<=2^{h+1}-1,取对数得到\floor{lgn} 6.1-3 传递性, Cormen用的是反证法 6.1-4 因为smallest element在heap中没有children,所以只能在leaf 6.1-5 YES. 在已排序的数组里A[i]的... 阅读全文
posted @ 2011-08-04 09:25 QED 阅读(1564) 评论(2) 推荐(0) 编辑
摘要: It was the best of times, it was the worst of times. This is my third time reading CLRS, and I never finished it. I hope I can put an end on it this time. I think this project will last one year to co... 阅读全文
posted @ 2011-08-03 22:36 QED 阅读(259) 评论(0) 推荐(0) 编辑