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

任一棵二叉搜索树的平均搜索时间都小于用顺序搜索法搜索同样结点的顺序表的平均搜索时间。()

任一棵二叉搜索树的平均搜索时间都小于用顺序搜索法搜索同样结点的顺序表的平均搜索时间。()

此题为判断题(对,错)。

答案
查看答案
更多“任一棵二叉搜索树的平均搜索时间都小于用顺序搜索法搜索同样结点的顺序表的平均搜索时间。()”相关的问题

第1题

二叉搜索树可用来对n个元素进行排序。试编写一个排序算法,首先将n个元素a[1..n]插人到一个空的

二叉搜索树中,然后对树进行中序遍历,并将元素按序放人数组a中,为简单起见,假设a中的数据互不相同。试编写一个函数,从一棵二叉搜索树中删除最大元素。要求函数的时间复杂性必须是O(h),其中h是二叉搜索树的高度。

点击查看答案

第2题

采用折半搜索法搜索长度为n的有序顺序表,搜索每个元素的平均比较次数()对应二叉判定树的高度(设高度≥2)。
采用折半搜索法搜索长度为n的有序顺序表,搜索每个元素的平均比较次数()对应二叉判定树的高度(设高度≥2)。

A、小于

B、大于

C、等于

D、大于等于

点击查看答案

第3题

通常的二叉搜索树,都假定搜索是根据树中各结点的同一种关键码进行的。现在,我们需要根据两种不
同的关键码keyl和key2进行搜索。

解决问题的一种方法是使用2-d树。2-d树类似于二叉搜索树,不同之处在于:

◇偶数层用keyl来比较:在该层上每一结点的keyl都大于共左子树中任一结点的key1,都不大于其右子树中任一结点的keyl。

◇奇数层用key2来比较:在该层上每一结点的key2都大于其左子树中任一结点的key2,都不大于其右子树中任一结点的key2.

◇树的根结点处于第0层。每次插入或搜索都从根结点出发,逐层比较。新结点应作为叶结点插入,

臂如,可以将不同人的姓和名(假设没有同名同姓者)分别为keyl和key2,建立一棵2-d树.作为例子,图7-27就是将清华大学的历任校长,按共任职年代的先后次序(周白齐、唐国安、周春、金邦正、曹云祥、严鹤龄、罗家伦、梅贻琦、叶企孙、蒋南翔、高景德、张孝文、王大中、顾秉林),顺序插人而形成的一棵2-d树。

(1)若命名树结点的类名为kdTNode,树的类名为kdTrce,关键码keyl的数据类型为T1,关键码key2的数据类型为T2,试写出2-d树的模板类结构定义,包括构造函数、复制构造函数、求树高、按给定值搜索、查找左子女、查找右子女、查找父结点、插人、删除等函数。此外,还要定义对树结点私有数据成员的存取函数(只要求写出函数的原型,不必给出代码实现)。

(2)基于上述定义,写出其中一个成员函数的实现代码:从根开始搜索关键码keyl和

key2与给定值vall和val2匹配的结点。函数的形式为:

若搜索成功,则函数返回true值,同时引用参数pt指向搜索到的结点,另引用参数pr指向结点*pt的父结点。此时,若树中只有一个结点,pr为NULL。

若搜索不成功或树为空,则函数返回false值,同时参数pt为NULL,在树非空时,pr则指向搜索失败前指针pt最后到达的结点;当树为空时,pr为NULL。

点击查看答案

第4题

最优二叉搜索树的时间复杂度为()。

A.O(n)

B.O(n!)

C.O(n2)

D.O(nlogn)

点击查看答案

第5题

折半搜索和二叉搜索树的时间性能()。
折半搜索和二叉搜索树的时间性能()。

A、相同

B、有时不相同

C、完全不同

点击查看答案

第6题

在最优二叉搜索树问题中,我们的优化目标是()。

A.只经过最少次数的比较就可以找到概率最大的元素

B.经过最多次数的比较就可以找到概率最小的元素

C.找到每个元素所需要的平均比较次数为最小

D.元素搜索代价的数学期望为最小

点击查看答案

第7题

在关键码值随机分布的情况下,用二叉搜索树的方法进行搜索,其搜索长度与()量级相同。
在关键码值随机分布的情况下,用二叉搜索树的方法进行搜索,其搜索长度与()量级相同。

A、顺序搜索

B、折半搜索

C、前两者都不正确

点击查看答案

第8题

最优二叉搜索树是指___________为最小的二叉搜索树。

点击查看答案

第9题

范围查询的另一解法需要借助范围树(range tree)。为此,首先仿照如图8.37(教材240页)和图8.38(教

范围查询的另一解法需要借助范围树(range tree)。

为此,首先仿照如图8.37(教材240页)和图8.38(教材241页)所示的策略,按x坐标将平面上所有输入点组织为一棵平衡二叉搜索树,称作主树(main tree)。

于是如图x8.10(a)和(b)所示,该树中每个节点各自对应于一个竖直的条带区域;左、右孩子所对应的条带互不重叠,均由父节点所对应的条带垂直平分而得;同一深度上所有节点所对应的条带也互不重叠,而且它们合并后恰好覆盖整个平面。

接下来,分别对于主树中每一节点,将落在其所对应条带区域中的输入点视作一个输入子集,并同样采用以上方法,按照y坐标将各个子集组织为一棵平衡二叉搜索树,它们称作关联树(associative tree)。于是如图x8.10(a)和(c)所示,每棵关联树所对应的竖直条带,都会进而逐层细分为多个矩形区域,且这些矩形区域也同样具有以上所列主树中各节点所对应条带区域的性质,至此,主树与这o(n)棵关联树构成了一个两层的嵌套结构,即所谓的范围树。

利用范围树,可按如下思路实现高效的范围查询,对于任一查询范围R=[x1,x2]×[y1,y2],首先按照[x1,x2]对主树做一次×方向的范围查询。根据8.4.1节的分析结论,如此可以得到o(logn)个节点,而且如x8.10(b)所示,它们所对应的竖直条带互不重叠,它们合并后恰好覆盖了x坐标落在[x1,x2]范围内的所有输入点。

接下来,深入这些节点各自对应的关联树,分别按照[y1,y2]做一次y方向的范围查询。如此从每棵关联树中取出的一系列节点,也具有与以上取自主树的节点的类似性质,具体地如图x8.10(c)所示,这些节点所对应的矩形区域互不重叠,且它们合并之后恰好覆盖了当前竖直条带内y坐标落在[y1,y2]范围内的所有输入点。换而言之,这些点合并之后将给出落在R中的所有点,既无重也不漏。

a)试证明,如此实现的范围树,空间复杂度为o(nlogn);

b)按照以上描述,试利用你的范围树实现新的范围查询算法;

c)试证明,以上范围查询算法的时间复杂度为O(r+log2n),其中r为实际命中并被报告的点数;

d)继续改进以上范围树,在不增加空间复杂度的前提下,将查询时间减至O(r+logn)。

点击查看答案

第10题

所谓半无穷范围查询(semi-infinite range query),是教材8.4节中所介绍一般性范围查询的特例,具

所谓半无穷范围查询(semi-infinite range query),是教材8.4节中所介绍一般性范围查询的特例,具体地,这里的查询区域是某一侧无界的广义矩形区域,比如R=[-1,+1]x[0,﹢∞),即是对称地包含正半y坐标轴、宽度为2的一个广义矩形区域,当然,对查询的语义功能要求依然不变——从某一相对固定的点集中,找出落在任意指定区域R内部的所有点。

范围树(176页习题[8-20])稍作调整之后,固然也可交持半无穷范围查询,但若能针对这一特定问题所固有的性质,改用优先级搜索树(priority search tree,PST)之类的数据结构,则不仅可以保持O(r+logn)的最优时间效率,而且更重要的是,可以将空间复杂度从范围树的O(nlogn)优化至O(n)。

如图x10.3所示,优先级搜索树除了首先在拓扑上应是一棵二叉树,还同时遵守以下三条规则。

①首先,各节点的y坐标均不小于其左右孩子(如果存在)——因此,整体上可以视作为以y坐标为优先级的二叉堆。

②此外,相对于任一父节点,左子树中节点的x坐标均不得大于右子树中的节点。

③最后,互为兄弟的每一对左、右子树,在规模上相差不得超过一。

a)试按照以上描述,用C/C++定义并实现优先级搜索树结构;

b)试设计一个算法,在O(nlogn)时间内将平面上的n个点组织为一棵优先级搜索树;

c)试设计一个算法,利用已创建的优先级搜索树,在O(r+logn)时间内完成每次半无穷范围查询,其中r为实际命中并被报告的点数。

点击查看答案

第11题

有n个结点的二叉搜索树具有多少种不同形态?

点击查看答案
下载APP
关注公众号
TOP
重置密码
账号:
旧密码:
新密码:
确认密码:
确认修改
购买搜题卡查看答案
购买前请仔细阅读《购买须知》
请选择支付方式
微信支付
支付宝支付
点击支付即表示你同意并接受《服务协议》《购买须知》
立即支付
搜题卡使用说明

1. 搜题次数扣减规则:

备注:网站、APP、小程序均支持文字搜题、查看答案;语音搜题、单题拍照识别、整页拍照识别仅APP、小程序支持。

2. 使用语音搜索、拍照搜索等AI功能需安装APP(或打开微信小程序)。

3. 搜题卡过期将作废,不支持退款,请在有效期内使用完毕。

请使用微信扫码支付(元)

订单号:

遇到问题请联系在线客服

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