算法导论第2章
我估计这章基本上所有的习题都要被我略过去了。
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 > 1
sort(A, n-1), 扫描,插入
else
return
end
2.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. 因为即使效率的关键是挪动比x大的那些元素。二分查找这里纯属打酱油啊。
2.3-7 把原始集合记做S,另外一个集合S'=x-S。把两个集合都排序一下。把连个集合merge的时候判断一下是否有相等的就好了。时间复杂度O(nlgn)
Problems
2.1