刚学数据结构,关于时间复杂度有点不明白

asenpal 2010-09-19 02:43:39
比如 T(n)=nlog2n+5000n, 为啥时间复杂度是O(nlog2n)呢,是咋算的啊,是求T(n)的极限吗
...全文
278 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
genlic 2010-09-25
  • 打赏
  • 举报
回复
当n到无穷的时候,就可以忽略了。
nodiebirdcomeback 2010-09-24
  • 打赏
  • 举报
回复
关于时间复杂度的计算有些是有规律可寻的。
对线性表的遍历的复杂度取决于线性表的元素个数即为n
读于树的遍历没有固定分析方法,指定对指定的树的类型和特点以及
算法本身来分析得到的。
对于多层嵌套代码的复杂度计算取决于循环层数以及循环量跟问题规模n的关系。
nodiebirdcomeback 2010-09-24
  • 打赏
  • 举报
回复
时间复杂度是指程序代码段在处理问题规模(用n表示)的时候,所需要时间的度量计算方法。
计算复杂度:根据各项相对于规模变量n的函数项之和来判断的,哪个函数项对于问题n的函数
值的增量变化越大就是它了。其实计算增量的时候,可以用导数来计算。
T(n)=nlog2n+5000n可以看成是f1(n) = nlog2n 和 f2(n) = 5000n
的和:即T(n) = f1(n) + f2(n) (1)
明显的f2(n)的函数增长远没f1(n)的快。
所以时间复杂度应该是nlog2n
如果对函数进行求导出现同阶的情况那就的看无穷大的极限了。
xinzaiyiqi 2010-09-24
  • 打赏
  • 举报
回复
的确如楼上所说
wizard_tiger 2010-09-21
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 asenpal 的回复:]
引用 1 楼 xingzhe2001 的回复:
是选取上式中的高次部分,忽烈次要部分


为什么啊。我记得在哪看到过,好像跟极限有点关系
[/Quote]
时间复杂度是语句频度n趋于无穷大时的同阶无穷大
即T(n)=nlog2n+5000n的同阶无穷大也就是O(nlog2n)
焙焙龙 2010-09-20
  • 打赏
  • 举报
回复
画个二维数轴就知道了
当n趋向于无穷大的时候,整个函数的图像,趋向于没有低此项的函数图像
michael122 2010-09-19
  • 打赏
  • 举报
回复
看复杂度的时候都是忽略常数的
5000再大也不过是一个固定的常数,跟logn是没法比的
所以第一项在n足够大的时候“统治”了第二项
超级大笨狼 2010-09-19
  • 打赏
  • 举报
回复
复杂度是当输入趋向无穷大的时候带来的变化。


所以,忽略数量级小的。

T(n)=nlog2n+5000n

这个可以认为是nlogn
连2和5000n都可以忽略。
williamsong997 2010-09-19
  • 打赏
  • 举报
回复
有谁真懂的,就详细解释下!
拒绝不懂装懂哦
keeya0416 2010-09-19
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 asenpal 的回复:]
引用 1 楼 xingzhe2001 的回复:
是选取上式中的高次部分,忽烈次要部分


为什么啊。我记得在哪看到过,好像跟极限有点关系
[/Quote]

[Quote=引用 1 楼 xingzhe2001 的回复:]
是选取上式中的高次部分,忽烈次要部分
[/Quote]
nlog2n+5000n 当 n ——> 无穷大 的时候 5000 相比 log2n 来说是可以忽略的
xingzhe2001 2010-09-19
  • 打赏
  • 举报
回复
正式的做法是f(x)=O(g(x)) as x->a 当且仅当

也就是在x大与某个值得时候有 f(x)<=M*|g(x)|
所以如果是低次的项,总可以找到个常数使得 小于 常数*高次,最后的结果及时保留最高次,忽略乘中常数。
xingzhe2001 2010-09-19
  • 打赏
  • 举报
回复
正式的做法是f(x)=O(g(x)) as x->a 当且仅当

也就是在x大与某个值得时候有 f(x)<=M*|g(x)|
所以如果是低次的项,总可以找到个常数使得 小于 常数*高次,最后的结果及时保留最高次,忽略乘中常数。
asenpal 2010-09-19
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 xingzhe2001 的回复:]
是选取上式中的高次部分,忽烈次要部分
[/Quote]

为什么啊。我记得在哪看到过,好像跟极限有点关系
xingzhe2001 2010-09-19
  • 打赏
  • 举报
回复
是选取上式中的高次部分,忽烈次要部分

33,007

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧