首页 > 职业资格考试> 保荐代表人
题目内容 (请给出正确答案)
[主观题]

对于几乎有序的向量,如教材代码2.26(60页)和代码2.27(60页)所示的起泡排序算法,都显得效率不足

对于几乎有序的向量,如教材代码2.26(60页)和代码2.27(60页)所示的起泡排序算法,都显得效率不足,比如,即便乱序元素仅限于A[0,√n)区间,最坏情况下仍需调用bubble()做Ω(√n)次调用,共做Ω(n)次交换操作和Ω(n3/2)次比较操作,因此累计运行Ω(n3/2)时间。

a)试改进原算法,使之在上述情况下仅需o(n)时间;

b)继续改进,使之在如下情况下仅需o(n)时间:乱序元素仅限于A[n-√n,n)区间;

c)综合以上改进,使之在如下情况下仅需o(n)时间:乱序元素仅限于任意的A[m,m+√n]区间。

查看答案
答案
收藏
如果结果不匹配,请 联系老师 获取答案
您可能会需要:
您的账号:,可能还需要:
您的账号:
发送账号密码至手机
发送
安装优题宝APP,拍照搜题省时又省心!
更多“对于几乎有序的向量,如教材代码2.26(60页)和代码2.2…”相关的问题
第1题
设采用实现如教材48页代码2.21所示的二分查找binSearch()算法版本A,针对独立均匀分布于[0,2n]

设采用实现如教材48页代码2.21所示的二分查找binSearch()算法版本A,针对独立均匀分布于[0,2n]内的整数目标,在固定的有序向量(1,3,5,...,2n-1)中查找。

a)若将平均的成功和失败查找长度分别记作S和F,试证明:(S+1)•n=F•(n+1);

b)上述结论,是否适用于binSearch()算法的其它版本?为什么?

c)上述结论,是否适用于fibSearch()算法的各个版本?为什么?

d)若待查找的整数按照其它的随机规律分布,以上结论又应如何调整?

点击查看答案
第2题
考查教材42页代码2.14中的无序向量唯一化算法deduplicate()。a)试证明,即便在最好情况下,该算法也需要运行Ω(n2)时间;b)试参照教材46页代码2.19中有序向量唯一化算法uniquify()的技巧,改进该算法,并分析其时间复杂度;c)试继续改进该算法,使其时间复杂度降至0(nlogn);d)这一效率是否还有改进的余地?为什么?

点击查看答案
第3题
如教材346页代码12.9所示的median()算法针对两个向量长度相差悬殊的情况做了优化处理。a)试分析该方法的原理,并证明其正确性;b)试证明,复杂度的精确上界应为o(log(min(n1,n2)))。

点击查看答案
第4题
试仿照教材22页代码1.10中向量的倒置算法,实现List::reverse()接口,将列表中元素的次序前后倒置。

点击查看答案
第5题
a)仿照教材81页代码3.20,试针对向量结构实现选择排序算法Vector::selectionSort();b)你实现的选择排序算法是稳定的吗?为什么?

点击查看答案
第6题
考查教材41页代码2.12中的无序向量删除算法remove(lo,hi)。a)若以自后向前的次序逐个前移后继元素,可能出现什么问题?b)何时出现这类问题?试举一例。

点击查看答案
第7题
考查教材39页代码2.10中的无序向量查找算法find(e,lo,hi)。a)在最好情况下,该算法需要运行多少时间?为什么?b)若仅考查成功的查找,则平均需要运行多少时间?为什么?

点击查看答案
第8题
考查majEleCandidate()法(教材343页代码12.6)的返回值maj。a)该候选者尽管不见得必然是众数,但是否一定是原向量中出现最频繁者?为什么?b)该返回值在向量中出现的次数最少可能是多少?试就此举一实例。

点击查看答案
第9题
考查教材37页代码2.7中的permute()算法,假设rand()为理想的随机数发生器,试证明:a)通过反复调用permute()算法,可以生成向量V[0,n)的所有n!种排列:b)由该算法生成的排列中,各元素处于任一位置的概率均为1/n;c)该算法生成各排列的概率均为1/n!。

点击查看答案
第10题
从队列的角度回顾二路归并算法的两个版本,不难发现,无论Vector::merge()(教材63页代码2.29)还是List::merge()(教材82页代码3.22),所用到的操作无非两类:从两个输入序列的前端删除元素;格元素插入至输出序列的后端。因此,若使用队列ADT接口来描述和实现该算法的过程,必将既简洁且深刻。试按照这一理解,编写二路归并算法的另一版本,实现任意一对有序队列的归并。

点击查看答案
退出 登录/注册
发送账号至手机
密码将被重置
获取验证码
发送
温馨提示
该问题答案仅针对搜题卡用户开放,请点击购买搜题卡。
马上购买搜题卡
我已购买搜题卡, 登录账号 继续查看答案
重置密码
确认修改