重要提示:请勿将账号共享给其他人使用,违者账号将被封禁!
查看《购买须知》>>>
首页 > 电气工程及其自动化> 发电厂电气部分
网友您好,请在下方输入框内输入要搜索的题目:
搜题
拍照、语音搜题,请扫码下载APP
扫一扫 下载APP
题目内容 (请给出正确答案)
[主观题]

顺序检索时间为O(n),二分法检索时间为O(log2n),散列检索时间为O(1)。为什么有了高效率的检索方法而低效率的

顺序检索时间为O(n),二分法检索时间为O(log2n),散列检索时间为O(1)。为什么有了高效率的检索方法而低效率的方法并未被淘汰?

答案
查看答案
更多“顺序检索时间为O(n),二分法检索时间为O(log2n),散列检索时间为O(1)。为什么有了高效率的检索方法而低效率的”相关的问题

第1题

现在有一个已排序的字典,请改写二分法检索算法,使之当排序码key在字典中重复出现时算法能找出第一个key出现
的元素下标(用*position来保存)。保持算法时间代价为O(logn)。
点击查看答案

第2题

现在有一个已排序的字典,请改写二分法检索算法,使之当排序码key在字典中重复出现时算法能找出第
一个key出现的元素下标(用*position来保存)。保持算法时间代价为O(1ogn)。

点击查看答案

第3题

对有n个元素的顺序表进行二分法检索的平均检索长度为______。

A.O(n)

B.O(log2n)

C.O(nlog2n)

D.O(2n)

点击查看答案

第4题

对有n个元素的顺序表进行二分法检索的平均检索长度为_________。A.O(n)B.O(log2 n)C.O(nlog2n)D.O

对有n个元素的顺序表进行二分法检索的平均检索长度为_________。

A.O(n)

B.O(log2 n)

C.O(nlog2n)

D.O(2n)

点击查看答案

第5题

[实现跳跃表]请根据下面介绍的跳跃表的思想实现跳跃表。 说明 为了提高链表的检索效率,可以
参考顺序表把单链表中元素排序,然后采用类似二分法的思想进行折半检索。不过,因为链表中结点的位置不是连续存放的,所以为了折半检索的需要,把单链表扩充为多链结构,借助于一些支持折半的“跳跃的指针”,把检索的范围快速缩小。 下图(a)是一个简单的链表,其结点按照结点值的顺序排列,检索排序的链表需要沿着链表一个结点一个结点的移动,平均需要访问n/2个结点。考虑添加一个指向其他后继结点的指针,以便交替地跳过结点的直接后继结点,如下图(b)所示。把只有1个指针的结点定义为0级跳跃表结点,把有2个指针的结点定义为1级跳跃表结点。进行检索时,先沿着1级指针走,直到找到一个后继比检索关键码大的值。然后回到0级指针,如果需要的话,再多走一个结点,这样可有效地把工作量减半。类似地,可以继续以这种方式添加指针,直到像下图(c)那样,对于一个有n=8个结点的表,只要有log2 n=3个指针。进行检索时,第一步就可以跳过n//2个结点,然后根据需要使得步伐越来越短(类似二分法检索)。通过这种安排,平均情况下的访问数是O(log2,n)。

下图(c)是一个理想的跳跃表。其中一半的结点只有1个指针,四分之一的结点有2个指针,八分之一的结点有3个指针,依此类推。而且同一级的指针跳跃的跨度是相同的。这是一个完全“等跨度”的跳跃表。 概率数据结构的思想跳跃表与有序的顺序表不同,它是一种动态数据结构,它的主要优点是能够动态地保持高效的检索。在频繁执行插入和删除过程维护前面这种“完全”等跨度的代价很大。为了减少维护的代价,仅仅需要维护成随机的等跨度就行。采用的关键技术是按照所谓“概率数据结构”的思想。具体方法如下: 假设元素的插入和删除都是随机的,每当删除一个结点时,在跳跃表中找到该结点后直接删除;关键是在插入一个结点时,要为新结点按概率随机分配一个级别,使得在跳跃表的所有结点中,有一个指针的结点(0级跳跃表结点)概率是50%,有两个指针的结点(1级跳跃表结点)概率是25%……依此类推。这样,根据概率论的观点,进行检索时,平均情况下的访问结点数仍然是O(log2n)。

点击查看答案

第6题

请根据下面介绍的跳跃表的思想实现跳跃表。 为了提高链表的检索效率,可以参考顺序表把单链表中元素排序,然

请根据下面介绍的跳跃表的思想实现跳跃表。

为了提高链表的检索效率,可以参考顺序表把单链表中元素排序,然后采用类似二分法的思想进行折半检索。不过,因为链表中结点的位置不是连续存放的,所以为了折半检索的需要,把单链表扩充为多链结构,借助于一些支持折半的“跳跃的指针”,把检索的范围快速缩小。

下图(a)是一个简单的链表,其结点按照结点值的顺序排列,检索排序的链表需要沿着链表一个结点一个结点的移动,平均需要访问n/2个结点。考虑添加一个指向其他后继结点的指针,以便交替地跳过结点的直接后继结点,如下图(b)所示。把只有1个指针的结点定义为0级跳跃表结点,把有2个指针的结点定义为1级跳跃表结点。进行检索时,先沿着1级指针走,直到找到一个后继比检索关键码大的值。然后回到0级指针,如果需要的话,再多走一个结点,这样可有效地把工作量减半。类似地,可以继续以这种方式添加指针,直到像下图(c)那样,对于一个有n=8个结点的表,只要有log2n=3个指针。进行检索时,第一步就可以跳过n/2个结点,然后根据需要使得步伐越来越短(类似二分法检索)。通过这种安排,平均情况下的访问数是O(log2n)。

下图(c)是一个理想的跳跃表。其中一半的结点只有1个指针,四分之一的结点有2个指针,八分之一的结点有3个指针,依此类推。而且同一级的指针跳跃的跨度是相同的。这是一个完全“等跨度”的跳跃表。

概率数据结构的思想

跳跃表与有序的顺序表不同,它是一种动态数据结构,它的主要优点是能够动态地保持高效的检索。在频繁执行插入和删除过程维护前面这种“完全”等跨度的代价很大。为了减少维护的代价,仅仅需要维护成随机的等跨度就行。采用的关键技术是按照所谓“概率数据结构”的思想。具体方法如下:

假设元素的插入和删除都是随机的,每当删除一个结点时,在跳跃表中找到该结点后直接删除;关键是在插入一个结点时,要为新结点按概率随机分配一个级别,使得在跳跃表的所有结点中,有一个指针的结点(0级跳跃表结点)概率是50%,有两个指针的结点(1级跳跃表结点)概率是25%……依此类推。这样,根据概率论的观点,进行检索时,平均情况下的访问结点数仍然是O(log2n)。

点击查看答案

第7题

请指出从顺序表{2,5,7,10,14,15,18,23,35,41,52}中用二分法检索出元素18需做______次比较。 A.2 B.3 C.4

请指出从顺序表{2,5,7,10,14,15,18,23,35,41,52}中用二分法检索出元素18需做______次比较。

A.2 B.3 C.4 D.5 E.6 F.7

点击查看答案

第8题

请指出从顺序表{2,5,7,10,14,15,18,23,35,41,52}中用二分法检索出元素18需做次比较。A.2B.3C.4D.5

请指出从顺序表{2,5,7,10,14,15,18,23,35,41,52}中用二分法检索出元素18需做次比较。

A.2

B.3

C.4

D.5

E.6

点击查看答案

第9题

倒查法是利用信息检索工具按着时间顺序由远及近的查找信息的方法。()
倒查法是利用信息检索工具按着时间顺序由远及近的查找信息的方法。()

A.正确

B.错误

点击查看答案

第10题

对线性表进行二分法检索的先决条件是什么?请简述二分法检索的基本过程及其平均检索长度。
点击查看答案

第11题

在包含n个元素的字典里进行顺序检索,若查找第i个元素的概率为pi,pi如下分布: p1=1/2,p2=1/4,…,pn-1=1/(2n-

在包含n个元素的字典里进行顺序检索,若查找第i个元素的概率为pi,pi如下分布:

p1=1/2,p2=1/4,…,pn-1=1/(2n-1),pn=1/2n求成功的检索的平均比较次数。

点击查看答案
下载APP
关注公众号
TOP
重置密码
账号:
旧密码:
新密码:
确认密码:
确认修改
购买搜题卡查看答案 购买前请仔细阅读《购买须知》
请选择支付方式
  • 微信支付
  • 支付宝支付
点击支付即表示同意并接受了《服务协议》《购买须知》
立即支付 系统将自动为您注册账号
已付款,但不能查看答案,请点这里登录即可>>>
请使用微信扫码支付(元)

订单号:

遇到问题请联系在线客服

请不要关闭本页面,支付完成后请点击【支付完成】按钮
遇到问题请联系在线客服
恭喜您,购买搜题卡成功 系统为您生成的账号密码如下:
重要提示:请勿将账号共享给其他人使用,违者账号将被封禁。
发送账号到微信 保存账号查看答案
怕账号密码记不住?建议关注微信公众号绑定微信,开通微信扫码登录功能
请用微信扫码测试
优题宝