首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
线性表(a1,a2,a3,…,an)中元素递增有序且按顺序存储于计算机内。要求设计算法完成以下内容: (1)用最少的时间在表中查找数值为x的元素。 (2)若找到将其与后继元素位置相交换。 (3)若找不到将其插入表中并使表中元素仍递增
线性表(a1,a2,a3,…,an)中元素递增有序且按顺序存储于计算机内。要求设计算法完成以下内容: (1)用最少的时间在表中查找数值为x的元素。 (2)若找到将其与后继元素位置相交换。 (3)若找不到将其插入表中并使表中元素仍递增
admin
2017-01-04
38
问题
线性表(a
1
,a
2
,a
3
,…,a
n
)中元素递增有序且按顺序存储于计算机内。要求设计算法完成以下内容:
(1)用最少的时间在表中查找数值为x的元素。
(2)若找到将其与后继元素位置相交换。
(3)若找不到将其插入表中并使表中元素仍递增有序。
选项
答案
(1)顺序存储的线性表递增有序,可以顺序查找,也可折半查找。题目要求“用最少的时间在表中查找数值为x的元素”,这里应使用折半查找方法。 void SearchExchangelnsert(ElemType a[];ElemType x) ∥a是具有n个元素的递增有序线性表,顺序存储。本算法在表中查找数值为x的 //元素,如查到则与其后继交换位置;如查不到,则插入表中,且使表仍递增有序 { low=0: high=n一1, //low和high指向线性表下界和上界的下标 while(low<=high) { mid=(low+high)/2; //找中间位置 if(a[mid]==x)break; //找到x,退出while循环 else if(a[mid]<x)low=mid+1;//到中点mid的右半去查 else high=mid—1: //到中点mid的左半去查 } if(a[mid]==x&&mid!=n) //若最后一个元素与x相等,则不存在与其后继交换的操作 { t=a[mid]; a[mid]=a[mid+1]; a[mid+1]=t; } //数值x与其后继元素位置交换 if(low>high) //查找失败,插入数据元素x { for(i=n-1;i>high;i一一) a[i+1]=a[i]; //后移元素 a[i+1]=x; //插入x } ∥结束插入 } ∥结束本算法 (2)算法讨论 首先是线性表的描述。算法中使用一维数组a表示线性表,未使用包含数据元素的一维数组和指示线性表长度的结构体。若使用结构体,对元素的引用应使用a.elem[i]。另外,元素类型就假定是ElemType,未指明具体类型。其次,C中一维数组下标从O开始,若说有凡个元素的一维数组,其最后一个元素的下标应是n—1。最后,本算法可以写成三个函数,即查找函数、交换后继函数与插入函数,写成三个函数显得逻辑清晰、易读。
解析
转载请注明原文地址:https://jikaoti.com/ti/UOfjFFFM
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
广西壮族自治区的设立时间是()。
我国对资本主义工商业采取和平赎买的政策内容和成功意义。
谈谈宗法制的内容和作用。
1901年6月,发表《立宪法议》,首先提出君主立宪要求的是()。
法国里昂工人起义提出:“我们只有一个口号‘人人自由平等!’”英国宪章运动请愿书提出:“我们竭尽自由人的义务,就应享受自由人的权利。我们要求普遍选举。”这些要求表明()。①带有空想社会主义色彩②当时工人的要求还没有超出资产阶级民主主义的范畴
以数组Data[m+1]作为循环队列SQ的存储空间,front为头指针,rear为队尾指针,则执行出队操作的语句是()。
循环队列用数组A[0..m~1]存放其元素值,已知其头尾指针分别为front和rear,则当前元素个数为()。
已知一个带有表头结点的单链表,结点结构为:假设该链表只给出了头指针list。在不改变链表的前提下,请设计一个尽可能高效的算法,查找链表中倒数第k个位置上的结点(k为正整数)。若查找成功,算法输出该结点的data域的值,并返回1;否则,只返回0。要求:
已知一个带有表头结点的单链表,结点结构为:假设该链表只给出了头指针list。在不改变链表的前提下,请设计一个尽可能高效的算法,查找链表中倒数第k个位置上的结点(k为正整数)。若查找成功,算法输出该结点的data域的值,并返回1;否则,只返回0。要求:
随机试题
现代行政权力的特点是()
七情内伤致病多见于
患者男,45岁,鼻部撞伤后,有血性液体自鼻孔流出,手帕或纸上的痕迹中心呈粉红色而周边色淡、清澈,色淡,流出的液体干燥后不呈痂状者,考虑为脑脊液鼻漏。鼻内镜下脑脊液鼻漏修补术正确的是
大理
深圳天行实业公司与天津联云化工建材公司购销合同纠纷仲裁过程中,申请人要求财产保全,即冻结被申请人银行存款55万元或扣押、查封其等值财产。仲裁委员会对此申请应采取下列哪种办法处理?()
孔某因犯强奸罪被甲县人民法院判处有期徒刑7年,判决生效后被送至乙县监狱服刑。期间,孔某越狱脱逃,并在丙县抢劫陈某人民币500元,后被捕获。请问,下列关于本案管辖的选项哪些是正确的?()
人造羊毛的结构简式为:,它属于:①共价化合物;②无机化合物;③有机化合物;④高分子化合物;⑤离子化合物
根据我国公司法律制度的规定,下列关于有限责任公司的表述中,正确的有()。
成员单位的连环担保使集团法人客户的信用风险放大。()
假定M2余额为103.6万亿元,M1余额为31.1万亿元,M0余额为5.5万亿元,则活期存款余额是()万亿元。
最新回复
(
0
)