首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
线性表(a1,a2,a3,…,an)中元素递增有序且按顺序存储于计算机内。要求设计算法完成以下内容: (1)用最少的时间在表中查找数值为x的元素。 (2)若找到将其与后继元素位置相交换。 (3)若找不到将其插入表中并使表中元素仍递增
线性表(a1,a2,a3,…,an)中元素递增有序且按顺序存储于计算机内。要求设计算法完成以下内容: (1)用最少的时间在表中查找数值为x的元素。 (2)若找到将其与后继元素位置相交换。 (3)若找不到将其插入表中并使表中元素仍递增
admin
2017-11-14
65
问题
线性表(a
1
,a
2
,a
3
,…,a
n
)中元素递增有序且按顺序存储于计算机内。要求设计算法完成以下内容:
(1)用最少的时间在表中查找数值为x的元素。
(2)若找到将其与后继元素位置相交换。
(3)若找不到将其插入表中并使表中元素仍递增有序。
选项
答案
(1)顺序存储的线性表递增有序,可以顺序查找,也可折半查找。题目要求“用最少的时间在表中查找数值为x的元素”,这里应使用折半查找方法。 void searchExchangeInsert(ElemType a[];ElemType x) //a是具有n个元素的递增有序线性表,顺序存储。本算法在表中查找数值为X的 //元素,如查到则与其后继交换位置;如查不到,则插入表中,且使表仍递增有序 { low=0: high=11—1: //low和high指向线性表下界和上界的下标 while(10w<=high) { mid:(10w+high)/2: //找中间位置 if(a[mid]==X)break; //找到X,退出while循环 else if(a[mid]
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中一维数组下标从0开始,若说有n个元素的一维数组,其最后一个元素的下标应是n一1。最后,本算法可以写成三个函数,即查找函数、交换后继函数与插入函数,写成三个函数显得逻辑清晰、易读。
解析
转载请注明原文地址:https://kaotiyun.com/show/Y3Ri777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
下列不属于战时共产主义政策内容的是()。
全国高校院系调整的具体时间是()。
第一个五年计划的具体时间段是()。
《凡尔赛条约》中,战胜国以()方式处置德国的全部海外殖民地。
电子计算机的发展经过了:①电子数值积分计算机(ENIAC)②集成电路计算机③大规模集成电路汁算机④晶体管计算机⑤人工智能计算机其先后顺序是()。
唐朝流传着一句“三十老明经、五十少进士”,这说明了唐代科举()。
下列描述中,属于冯.诺依曼体系结构的特点是()。①采用流水线技术;②指令和数据均以二进制表示;③存储程序并且存储时不区别数据和指令。
图的D搜索类似于BFS,不同之处在于使用栈代替BFS中的队列,入/出队列的操作作为入/出栈的操作,即当一个顶点的所有邻接结点被搜索后,下一个搜索出发点应该是最近入栈(栈顶)的顶点。(1)用邻接表作为存储结构,写一个D搜索算法;(2)用D搜索方法
以数组Data[m+1]作为循环队列SQ的存储空间,front为头指针,rear为队尾指针,则执行出队操作的语句是()。
随机试题
关于慢性支气管炎的发病因素,以下哪一项是错误的
博来霉素为紫杉醇
镍铬合金属于钴铬合金属于
甲因贪图便宜,承租了乙的一处危房.双方口头约定租赁期限为两年。但甲一次性支付了租金,甲承租后,欲解除合同,下列表述正确的有:()
从国际赔偿责任的主体来看;根据现行的制度,下列可能存在的情形包括:
关于管片拼装顺序以下说法错误的是()。
下列原则属于自利原则进一步引申的原则有()。
材料一:构建社会主义和谐社会是我们党提出的重大战略任务,而解决民生问题是构建和谐社会的着力点。为贯彻中央精神,国务院制定了一系列政策,包括增加用于解决民生问题的财政支出。各级地方政府也根据本地实际采取各种措施,解决人民群众最关心、最直接、最现实的利益问题
德育过程的基本矛盾是教育者与德育内容、方法之间的矛盾。()
显示器的灰度是指()。
最新回复
(
0
)