算法导论思考题

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

相关推荐
前端摸鱼匠8 小时前
【AI大模型春招面试题11】什么是模型的“涌现能力”(Emergent Ability)?出现条件是什么?
人工智能·算法·ai·自然语言处理·面试·职场和发展
MORE_778 小时前
leecode-合并区间-贪心算法
算法·贪心算法
2401_873204658 小时前
分布式系统安全通信
开发语言·c++·算法
sw12138910 小时前
C++中的代理模式实战
开发语言·c++·算法
ballball~~10 小时前
ISP-CCM(Color Correction Matrix)
图像处理·数码相机·算法
Sunshine for you10 小时前
实时操作系统中的C++
开发语言·c++·算法
中科院提名者11 小时前
BPE 算法的硬核拆解——理解词表(Vocabulary)是如何从零训练出来的,以及字符串是如何被切碎的
算法
「QT(C++)开发工程师」11 小时前
C++11三大核心特性深度解析:类型特征、时间库与原子操作
java·c++·算法
乐分启航11 小时前
SliMamba:十余K参数量刷新SOTA!高光谱分类的“降维打击“来了
java·人工智能·深度学习·算法·机器学习·分类·数据挖掘
你真是饿了13 小时前
算法专题二:滑动窗口
算法