算法导论思考题

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

相关推荐
希陌ximo10 分钟前
GPU选型大对决:4090、A6000、L40谁才是AI推理的最佳拍档?
人工智能·算法·支持向量机·排序算法·推荐算法·迭代加深
IceTeapoy27 分钟前
【RL】强化学习入门(一):Q-Learning算法
人工智能·算法·强化学习
艾醒30 分钟前
探索大语言模型(LLM):ReAct、Function Calling与MCP——执行流程、优劣对比及应用场景
算法
智者知已应修善业31 分钟前
2021-11-14 C++三七二十一数
c语言·c++·经验分享·笔记·算法·visual studio
艾醒39 分钟前
探索大语言模型(LLM):Transformer 与 BERT从原理到实践
算法
艾醒44 分钟前
探索大语言模型(LLM):循环神经网络的深度解析与实战(RNN、LSTM 与 GRU)
算法
艾醒1 小时前
探索大语言模型(LLM):马尔可夫链——从诗歌分析到人工智能的数学工具
深度学习·算法
CoovallyAIHub1 小时前
YOLO版本迷信终结!11领域398万实例实测:告诉你的场景该用哪个版本?
opencv·算法·计算机视觉
海底火旺1 小时前
两种思路的碰撞:从超时分层法到高效双指针的蜕变
前端·javascript·算法
艾醒1 小时前
探索大语言模型(LLM):目标、原理、挑战与解决方案
算法