O(log n) O(n) O(n log n) O(n^2) O(2^n) 的区别在那里
大O符号和数据结构有什么关系?
如用这些来衡量数据结构的 best case 和 worst case?
第1个回答 推荐于2017-10-10
大O 就是 。
时间复杂度是大概的描述一个算法的用时(实际上从侧面的表达了他的效率)
你可以 把它 看成函数 y = f(x)一样。
O(n)中的n 代表 规模大小,这也表明了,时间复杂度 跟 规模的关系。
最好时间复杂度,通常指在最好情形下,这个算法用时。反之,最坏情况下的就是最坏时间复杂度。
通常 的最坏时间复杂度就是O(2^n),最坏情形是原序列 跟 排序后的序列完全相反。本回答被提问者采纳
时间复杂度是大概的描述一个算法的用时(实际上从侧面的表达了他的效率)
你可以 把它 看成函数 y = f(x)一样。
O(n)中的n 代表 规模大小,这也表明了,时间复杂度 跟 规模的关系。
最好时间复杂度,通常指在最好情形下,这个算法用时。反之,最坏情况下的就是最坏时间复杂度。
通常 的最坏时间复杂度就是O(2^n),最坏情形是原序列 跟 排序后的序列完全相反。本回答被提问者采纳
第2个回答 2010-11-17
时间复杂度
第3个回答 2010-11-18
O表示复杂度,复杂度一般包括时间复杂度喝空间复杂度,时间复杂度指算法花费时间的复杂度,而空间复杂度指存储数据所需空间的复杂度。
n一般表示数据的个数,O(logn)则表示运算n个数据所需的时间与logn成正比,如果用他们来衡量数据结构,一般来说复杂度越低那么效率越高,一般来说负责度的大小排序为 O(log n)<O(n)< O(n log n) <O(n^2)< O(2^n) ,他们的区别在于随着n的增加,复杂度的变化速度的剧烈程度不同本回答被网友采纳
n一般表示数据的个数,O(logn)则表示运算n个数据所需的时间与logn成正比,如果用他们来衡量数据结构,一般来说复杂度越低那么效率越高,一般来说负责度的大小排序为 O(log n)<O(n)< O(n log n) <O(n^2)< O(2^n) ,他们的区别在于随着n的增加,复杂度的变化速度的剧烈程度不同本回答被网友采纳