首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
线性表(a1,a2,a3,…,an)中元素递增有序且按顺序存储于计算机内。要求设计一算法用最少时间在表中查找数值为x的元素,并将其与后继元素位置相交换。如果线性表中找不到该元素,则将该元素插入表中并使表中元素仍递增有序。 (1)给出算法的基本设计思
线性表(a1,a2,a3,…,an)中元素递增有序且按顺序存储于计算机内。要求设计一算法用最少时间在表中查找数值为x的元素,并将其与后继元素位置相交换。如果线性表中找不到该元素,则将该元素插入表中并使表中元素仍递增有序。 (1)给出算法的基本设计思
admin
2018-08-12
47
问题
线性表(a
1
,a
2
,a
3
,…,a
n
)中元素递增有序且按顺序存储于计算机内。要求设计一算法用最少时间在表中查找数值为x的元素,并将其与后继元素位置相交换。如果线性表中找不到该元素,则将该元素插入表中并使表中元素仍递增有序。
(1)给出算法的基本设计思想。
(2)根据设计思想,采用C或C++或Java语言描述算法,关键之处给出注释。
(3)分别给出算法各部分的时间复杂度。
选项
答案
(1)顺序存储的线性表递增有序,可以顺序查找,也可折半查找。题目要求“用最少的时间在表中查找数值为戈的元素”,这里应使用折半查找方法。 (2)算法的设计如下: void SearchExchangelnse~(ElemType a[],ElemType x) { int low=0;int high=n-l;int mid; //low和high指向线性表下界和上界的下标 while(low<=high) { mid=(low+high)/2; //找中间位置 if(a[mid]==x)break; //找到x,退出while循环 else if(a[mid]
high) { //查找失败,插入数据元素x int i; for(i=n-1;i>high;i一一) a[i+1]=a[i]; //后移元素 a[low]=x; //插入x } //结束插入 } (3)在利用折半查找的方法查找x的过程中时间复杂度为O(nlog
2
n);交换元素位置时的时间复杂度为O(1);当查找不成功时,插入元素时的时间复杂度为O(n)。
解析
转载请注明原文地址:https://kaotiyun.com/show/9cRi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
第一国际成立前,各国无产阶级强烈要求加强国际团结的直接原因是()。
下列城市:①南京②厦门③天津④杭州,按其在近代历史上开放为商埠的时间先后顺序排列应该是()
美国工业革命的有利条件包括()。①美国自然资源丰富②独立战争后,美国创立了资产阶级共和制度③地理位置优越,远离动乱的欧洲④拥有潜在的广阔的国内市场
支持多道程序的操作系统,区别于其他操作系统的主要特征为()。
下列选择中,()不是操作系统关心的主要问题。
一棵:BS’r树共7个结点,值分别为1、2、3、4、5、6、7,形态为满二叉树,()不是插入序列。
高度为7的AVL树最少有()个结点。
随机试题
关于胸膜和胸膜腔的描述,错误的是
前额痛除主穴外,宜加用( )巅顶痛除主穴外,宜加用( )
女性,35岁,有风湿性心脏病二尖瓣狭窄病史。除阴天有时关节酸痛外,无任何不适,未给予治疗。3天来感冒、咳嗽、咳黄黏痰。予以静点抗生素,按3m1/min的速度输注,在输液中病人突感呼吸困难,频频咳嗽,咳粉红色泡沫样痰,烦躁不安。查体:血压100/6
建立近代警察制度较早的国家是()
一部门共有三个人数相等的工作小组,其中一组的男员工人数与二组的女员工人数相同,三组的男员工人数是全部门男员工的。则女员工占全部门人数的比例是:
22,122,1221,11221,11221l,()。
在数据库技术中,实体一联系模型是一种
对于长度为n的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是()。
下列数组声明语句中,正确的是
Rabiesisanordinarilyinfectiousdiseaseofthecentralnervoussystem,causedbyavirusand,asarule,spreadchieflybydo
最新回复
(
0
)