算法时间复杂度:O(logn)的底数是多少?

您所在的位置:网站首页 1的对数是什么 算法时间复杂度:O(logn)的底数是多少?

算法时间复杂度:O(logn)的底数是多少?

2024-06-05 12:43| 来源: 网络整理| 查看: 265

大家好,我是老三,最近裸辞了,在面试。

前两天一个面试,只面了十分钟就结束了——

事情是这样的:

面试官:你能说说HashMap的数据结构吗?

老三:数组+链表+红黑树,阿巴阿巴……

面试官:那你说说红黑树的查找复杂度是多少?

老三:O(logn)。

面试官:那这个复杂度的底数是多少?

老三:时间复杂度O(logn)有底数?

面试官:没有吗?

尬住……

面试官:那你再说一下快速排序的时间复杂度?底数是多少?

老三露出智(尴)慧(尬)的微笑……

面试官:好了,我没什么要问的了,这次面试到这结束吧。

结束面试之后,老三意难平,赶紧查一下。

O(logn)是有底数的!

看一下时间复杂度的定义:

在进行算法分析时, 语句总的执行次数 T ( n ) 是关于问题规模 n 的 函 数 。进 而 分 析 T ( n ) 随 n 的变化情况并确定 T ( n ) 的 数 量级。算法的时间复杂度,也就是算法的时间量度, 记作:T ( n )= O(f(n))。它表示随问题规模 n 的增大, 算法执行时间的增长率和f ( n ) 的增长率相同, 称作算法的渐近时间复杂度, 简称为时间复杂度。其中 f ( n ) 是问题规模 n 的某个函数。

有点抽象对不对,直接上例子,我们来意会一下。

        int n=10;         int count=1;         while (count


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3