一个关于数据结构线性表的题

一个关于数据结构线性表的题在一个具有n个结点的有序单链表中插入一个新结点并仍然有序的时间复杂性为______。A.O(1)B.O(n)C.O(n2)D.O(log2n)求... 一个关于数据结构线性表的题在一个具有n个结点的有序单链表中插入一个新结点并仍然有序的时间复杂性为______。
A.O(1)
B.O(n)
C.O(n2)
D.O(log2n)
求给出解释,谢谢
展开
 我来答
carea
2016-12-23 · TA获得超过459个赞
知道小有建树答主
回答量:395
采纳率:65%
帮助的人:106万
展开全部
假设有序的链表存放的都是整数,其值为:1,2,。。。。,n
逆序的分析也是一样的。
(1)如果你插入1,那么时间是1个单位时间;
(2)如果你要插入n+1,那么时间是n个单位时间;
(3)如果你要插入n/2,那么时间是n/2个时间;
那么算法复杂度到底以哪个为准呢?
算法分析里有约定,这种情况我们假设插入的数据可以是任意的数,那么各种情况下平均的插入时间作为算法的时间复杂度。
明显平均时间是(1+2+。。。+n)/n=(1+n)*n/2/n=(1+n)/2约等于0.5n;
算法分析里也有约定,对于时间是n的k倍的:k*n,其中k为常数,那么算法复杂度统一称为O(n),也就是说你的算法时间不管是(1/10000)*n还是10000*n,其实都是一样的复杂度。

所以这一题选B
光点科技
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件... 点击进入详情页
本回答由光点科技提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式