首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
线性表(a1,a2,a3,…,an)中元素递增有序且按顺序存储于计算机内。要求设计一算法用最少时间在表中查找数值为x的元素,并将其与后继元素位置相交换。如果线性表中找不到该元素,则将该元素插入表中并使表中元素仍递增有序。 根据设计思想,采用C或C++或J
线性表(a1,a2,a3,…,an)中元素递增有序且按顺序存储于计算机内。要求设计一算法用最少时间在表中查找数值为x的元素,并将其与后继元素位置相交换。如果线性表中找不到该元素,则将该元素插入表中并使表中元素仍递增有序。 根据设计思想,采用C或C++或J
admin
2019-08-15
31
问题
线性表(a
1
,a
2
,a
3
,…,a
n
)中元素递增有序且按顺序存储于计算机内。要求设计一算法用最少时间在表中查找数值为x的元素,并将其与后继元素位置相交换。如果线性表中找不到该元素,则将该元素插入表中并使表中元素仍递增有序。
根据设计思想,采用C或C++或Java语言描述算法,关键之处给出注释。
选项
答案
算法的设计如下: void SearchExchangeInsert(ElemType a[],ElemType x){ in low=0;int high=n一1;int mid; //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 int i; for(i=n—l;i>high;i一一) a[i+1]=a[i]; //后移元素 a[low]=x; //插入x } //结束插入 }
解析
转载请注明原文地址:https://jikaoti.com/ti/23GjFFFM
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
第二次世界大战后,资本主义经济出现的新特点有()。①美国资本加强了对西欧和日本的渗透②国家开始参与资本主义生产过程③国家成为资本主义私有制的保护者④科技成果更为迅速地转化为生产力
1929~1933年经济危机加剧了世界局势的紧张,这主要是指()。①各国人民强烈要求改善生活状况,罢工运动高涨②法西斯分子在各国兴风作浪③资本主义加紧掠夺国际市场,加剧了各国间的矛④资本主义加紧掠夺殖民地和半
二里头文化是我国考古史上的重大发现,具有重大的意义。根据所学知识,回答问题:二里头文化在类型上可以分为()
“两个凡是”
下图是某模型机CPU的组成框图。设该CPU采用同步控制逻辑,分取指周期、取第一操作数周期,取第二操作数周期、执行周期四个机器周期,每个机器周期有T0、T1、T2三个节拍。试写出如下双操作数运算指令的微操作命令及节拍安排。ADDR0,(R1)完成功
设有两个子网202.118.133.0/24和202.118.130.0/24,如果进行路由汇聚,得到的网络地址是()。
某计算机字长为16位,主存地址空间大小为128KB,按字编址。采用单字长指令格式,指令各字段定义如图B-4所示。转移指令采用相对寻址方式,相对偏移量用补码表示,寻址方式定义见表B-1。请回答下列问题:该指令系统最多可有多少条指令?该计算机最多有
设单链表的表头指针为h,链表中结点构造为(data,next),其中data域为字符型,链表长度为n。编写算法判断该链表的n个字符是否中心对称。(例如xyx,xyyx都是中心对称。)
随机试题
对多处理机的描述不正确的是()
A乙琥胺B硫酸镁C丙戊酸钠D卡马西平E苯巴比妥过量会引起血Mg2+增高,导致呼吸抑制、血压骤降的是
狂犬病病毒感染动物后经()排出
下列固定资产中,应计提折旧的是()
经济分析的基本方法有()。
下列关于上海野生动物园的表述正确的是()。
大脑左半球主要负责抽象思维和空间知觉。()
科尔伯格把道德判断分为三个水平,每个水平又各包括两个阶段。这六个阶段的顺序是()①寻求认可取向阶段②惩罚服从取向阶段③相对功利取向阶段④社会契约取向阶段⑤普遍伦理取向阶段⑥遵守法规取向阶段
在开放系统互连参考模型(OSI)中,()的主要功能是将网络地址翻译成对应的物理地址,并决定如何将数据从发送方经路由送达到接收方。
A、Beginners.B、Intermediatelearners.C、LearnersofspecialEnglish.D、BeginnersknowingABC.C
最新回复
(
0
)