算法导论思考题

2-1 在归并排序中对小数组采用插入排序

c. 假定修改后的算法的最坏情况运行时间为 Θ \Theta Θ(nk+nlg(n/k)),要使修改后的算法与标准的归并排序具有相同的运行时间,作为n的一个函数,借助 Θ \Theta Θ记号,k的最大值是什么?

假定k= Θ \Theta Θ(lg n), Θ ( n k + n l g ( n / k ) ) = Θ ( n k + n lg ⁡ n − n lg ⁡ k ) = Θ ( n lg ⁡ n + n lg ⁡ n − n lg ⁡ ( lg ⁡ n ) ) = Θ ( 2 n lg ⁡ n − n lg ⁡ ( lg ⁡ n ) ) \begin{aligned}\Theta(nk+nlg(n/k))&=\Theta(nk+n\lg n-n\lg k)\\ &=\Theta(n\lg n+n\lg n-n\lg (\lg n))\\ &=\Theta(2n\lg n-n\lg (\lg n)) \end{aligned} Θ(nk+nlg(n/k))=Θ(nk+nlgn−nlgk)=Θ(nlgn+nlgn−nlg(lgn))=Θ(2nlgn−nlg(lgn))

当n趋近于无穷大时,lg n的增长速度远快于lg(lg n),所以后者可忽略,上式写为 Θ \Theta Θ(nlg n)

2-2

BUBBLESORT(A)

1 for i=1 to A.len-1

2 \quad for j=A.len downto i+1

3 \qquad

相关推荐
偷吃的耗子29 分钟前
【CNN算法理解】:CNN平移不变性详解:数学原理与实例
人工智能·算法·cnn
dazzle1 小时前
机器学习算法原理与实践-入门(三):使用数学方法实现KNN
人工智能·算法·机器学习
那个村的李富贵1 小时前
智能炼金术:CANN加速的新材料AI设计系统
人工智能·算法·aigc·cann
张张努力变强2 小时前
C++ STL string 类:常用接口 + auto + 范围 for全攻略,字符串操作效率拉满
开发语言·数据结构·c++·算法·stl
万岳科技系统开发2 小时前
食堂采购系统源码库存扣减算法与并发控制实现详解
java·前端·数据库·算法
张登杰踩2 小时前
MCR ALS 多元曲线分辨算法详解
算法
YuTaoShao2 小时前
【LeetCode 每日一题】3634. 使数组平衡的最少移除数目——(解法一)排序+滑动窗口
算法·leetcode·排序算法
波波0072 小时前
每日一题:.NET 的 GC是如何分代工作的?
算法·.net·gc
风暴之零2 小时前
变点检测算法PELT
算法
深鱼~2 小时前
视觉算法性能翻倍:ops-cv经典算子的昇腾适配指南
算法·cann