首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
线性表(a1,a2,a3,…,an)中元素递增有序且按顺序存储于计算机内。要求设计算法完成以下内容: (1)用最少的时间在表中查找数值为x的元素。 (2)若找到将其与后继元素位置相交换。 (3)若找不到将其插入表中并使表中元素仍递增
线性表(a1,a2,a3,…,an)中元素递增有序且按顺序存储于计算机内。要求设计算法完成以下内容: (1)用最少的时间在表中查找数值为x的元素。 (2)若找到将其与后继元素位置相交换。 (3)若找不到将其插入表中并使表中元素仍递增
admin
2017-11-14
32
问题
线性表(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://jikaoti.com/ti/pDfjFFFM
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
《齐民要求.序》中写道:“今采摭经传,爰及歌谣,洵之老成,验之行事,起自农耕,终于醯醢(酱醋),资生之靡不毕书书;号日《齐民要术》……舍本逐末,贤哲所非……故商贾之事,阙而不录。”这段材料表明作者()。①采取古今资料的编撰原则②
以下选项不属于希腊城邦的形成方式和途径的是()。
1925年爆发的当时世界上罢工时间最长的一次斗争是()。
陈云作《目前财政经济的情况和克服困难的若干办法》的重要讲话,分析当前财政经济方面的主要困难,提出克服困难的六点意见的会议是()。
二战期间,下列四次战役的时间先后顺序是()①莫斯科战役②诺曼底登陆③不列颠之战④阿拉曼战役
美国工业革命的有利条件包括()。①美国自然资源丰富②独立战争后,美国创立了资产阶级共和制度③地理位置优越,远离动乱的欧洲④拥有潜在的广阔的国内市场
在欧盟发展历史上,促使欧盟正式成立的文件是()。
全国高校院系调整的具体时间是()。
在采用线性探测法处理冲突所构成的散列表上进行查找,可能要探测多个位置,在查找成功的情况下,所探测的这些位置的键值()。
随机试题
国际金融市场
下列哪项是恶性肿瘤的主要特征()
体位试验阳性的肿瘤是
胸脘胁痛,吞酸吐苦,咽干口燥,舌红少津,脉细弱,治宜选方
关于软骨肉瘤的叙述,下列哪项不正确
HⅣ流、乙脑病毒
下列药物中主要作用于M期的药物有( )。
图5—5—21所示梁受移动荷载F作用,当F移到()截面处梁内的压应力最大。
建造师张华因个人原因与原施工解除合同后,在一家建设工程招标代理公司就职,他要办理变更注册手续需要提交( )材料。
首次公开发行股票的信息披露中,发行人应根据交易的性质和频率,按照( )分类披露关联交易及关联交易对其财务状况和经营成果的影响。
最新回复
(
0
)