首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
某个任务的数据模型可以抽象为给定的k个集合:S1,S2,…,Sk。其中Si(1≤i≤k中的元素个数不定。在处理数据过程中将会涉及元素的查找和新元素的插入两种操作,查找和插入时用一个二元组(i,x)来规定一个元素,i是集合的序号,x是元素值。设计一种恰当的数
某个任务的数据模型可以抽象为给定的k个集合:S1,S2,…,Sk。其中Si(1≤i≤k中的元素个数不定。在处理数据过程中将会涉及元素的查找和新元素的插入两种操作,查找和插入时用一个二元组(i,x)来规定一个元素,i是集合的序号,x是元素值。设计一种恰当的数
admin
2019-01-16
72
问题
某个任务的数据模型可以抽象为给定的k个集合:S
1
,S
2
,…,S
k
。其中S
i
(1≤i≤k中的元素个数不定。在处理数据过程中将会涉及元素的查找和新元素的插入两种操作,查找和插入时用一个二元组(i,x)来规定一个元素,i是集合的序号,x是元素值。设计一种恰当的数据结构来存储这k个集合的元素,并能高效地实现所要求的查找和插入操作。
(1)构造数据结构,并且说明选择的理由。
(2)若一组数据模型为S
1
={10.2,1.7,4.8,16.2},S
2
={1.7,8.4,0.5},S
3
={4.8,4.2,3.6,2.7,5.1,3.9},待插入的元素二元组为(2,11.2)和(1,5.3),按你的设计思想画出插入元素前后的数据结构状态。
选项
答案
借助于分块查找思想,在建立数据顺序表的同时,建立一索引表。数据表中按k个集合分块(元素个数不一定相等),索引表中有两个域,一是各集合最后一个元素在数据表中的位置(一维数组中的下标),二是集合的个数(k)。实现数据运算时,根据给定的二元组(i,x),首先在索引表中找到集合i的位置,然后在数据表中查找x。查到x,则查找成功,返回x在数据表中的位置,否则查找失败。若要插入,则将数据表中的数据后移,插入x,同时修改索引表。 typedef struct{datatype data;}rectype; typedef struct{ int a[]; //a数组容量够大,存储各集合最后一个数 据在数据表中的下标 int k: //集合个数 }index; int SetSearch_Insert(rectype R[]I index id,datatype x,int i){ //数据表R,查找第i个集合的元素X,若查找成功,返回其位置, //否则将其插入第i个集合 if(i<1 || i>id.k){printf(”无第%d个集合\n”,i);exit(0); } if(i==1)first=0; //first指向第i个集合在数据表的首址 else first=id.a[i一1]+1; last=id.a[i]; //last是第i个集合在数据表中的末址 for(j=first;j<last;j++)if(R[j]==X)return(j); //查找成功 for(j=id.a[id.k];j>id.A[i];j--){ //查找失败,将x插入数据表 R[j+1]=R[j]; //元素后移 R[j+1]=x: //将X插入到原第i个集合最后一个元素之后 for(j=i;j≤k;j++)id.a[j]++; //修改索引表中各集合最后一个元素的下标 } 由于各集合元素个数不等,各块长度不等且块间无序,索引表中用数组表示,数组中元素值是各集合最后一个元素在数据表中的下标。按本算法插入(2,11.2)和(1,5.3),数据表前后状态如下: [*] 插入前,索引表中a数组的内容是3,6,12,插入后修改为4,8,14。
解析
转载请注明原文地址:https://kaotiyun.com/show/bYRi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
明治维新的主要内容不包括()。
范仲淹在《答手诏条陈十事》中提出,庆历新政的核心内容是()。
詹天佑自主设计修建了中国第一条铁路是在()。
阅读材料,回答以下问题:重庆中央党部,暨中央执监委员诸同志均鉴:今年4月,临时全国代表大会宣言,说明此次抗战之原因,曰:“自塘沽协定以来,吾人所以忍辱负重与倭国周旋,无非欲停止军事行动,采用和平方法,先谋北方各省之保全,再进而谋东北四省问题之合理解决,
明末清初,著名学者()抗清失败,前往日本讲学,传播中国文化。
凡尔赛体系是由一系列条约组成的,其中战胜国与匈牙利签订的条约为()。
中华民国军政府是由下列哪个军阀成立的?()
下列关于隋唐时期货币表述准确的是()。①隋朝使用五铢钱②开元年间开始统一使用开元通宝③开元通宝是唐朝的通用货币④开元通宝是唐代以后历代王朝货币的范式
下图所示为双总线结构机器的数据通路,IR为指令寄存器,PC为程序计数器(具有自增功能),M为主存(受R/W信号控制),AR为地址寄存器,DR为数据缓冲寄存器,ALU由加、减控制信号决定完成何种操作,控制信号G控制的是一个门电路。另外,线上标注有小圈表示有控
某网络拓扑如图A-3所示,路由器R1通过接口E1、E2分别连接局域网1、局域网2,通过接口LO连接路由器R2,并通过路由器R2连接域名服务器与互联网。R1的L0接口的IP地址是202.118.2.1,R2的L0接口的IP地址是202.118.2.2,L1接
随机试题
以纵隔7分区为例,关于纵隔肿瘤好发部位的描述,不正确的是
消化道传染性途径传染
背景资料A机电工程公司总承包了一新建机械厂的通风与空调工程,总工期为6个月。主、辅材料均由A机电工程公司供应。其中分部分项工程量清单计价合计为536万元;措施项目清单计价合计60万元;其他项目清单计价合计15万元。取费费率为:规费费率4.85%;
会计年度即公历年度,通常从某一年的1月1日起到12月31日为止。()
关于基金交易业务控制,下列说法正确的是( )。
引起尿道损伤的常见原因是()。
传统教育的显著特征之一便是教师为中心,而时代呼唤一种新型的民主平等的师生关系,这就使新形势下班主任角色的转变要()。
鸦片战争以后,西方列强野蛮入侵,封建统治腐朽无能,国家战乱不已,人民饥寒交迫,中国人民和中华民族遭受世所罕见的深重苦难。要实现民族独立、人民解放和国家富强、人民富裕,就必须推翻封建专制统治,对中国社会进行根本变革。辛亥革命的爆发,是()
Choosethecorrectletter,A,BorC.PacificTapaClothWhydidtheMaoripeopleofNewZealandstopmakingtapa?
A.forB.vocabularyC.numerousD.endlessE.graduallyF.activeG.rapidlyH.surprisinglyI.talkedaboutJ.result
最新回复
(
0
)