首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
某个任务的数据模型可以抽象为给定的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
31
问题
某个任务的数据模型可以抽象为给定的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
学硕统考专业
相关试题推荐
下列不属于凯末尔主义内容的是()。
林则徐的反英国侵略的策略思想不包括()。
《关于建国以来党的若干历史问题的决议》
圣德太子《宪法十七条》规定的是()。
凡尔赛体系是由一系列条约组成的,其中战胜国与匈牙利签订的条约为()。
试析孙中山新旧三民主义中民族主义的内涵、区别与联系。
1984年,《中共中央关于经济体制改革的决定》中强调,商品经济的充分发展是社会经济发展不可逾越的阶段,市场调节的辅助性作用不可缺少,并指出要有步骤地逐步缩小指令性计划的范围。这表明当时我国()
设计一个算法求图的中心点。设v是有向图G的一个顶点,把v的偏心度定义为:MAX{从w到v的最短距离|w属于V(G))如果v是有向图G中具有的最小偏心度的顶点,则称顶点v是G的中心点。
在一个长度为n(n>1)的带头结点的单链表h上,设有尾指针r(指向尾结点),则执行()操作与链表的长度有关。
系统总线中地址线的功能是用于选择()。
随机试题
男,28岁,因感冒后出现进行性少尿做肾活检,结果为细胞新月体性肾小球肾炎,血浆抗肾小球基底膜抗体(+),首选治疗方法是
A.β内酰胺类药品B.某些激素类C.高致敏性药品或生物制品D.青霉素类药品应当使用专用设施(如独立的空气净化系统)和设备的是()。
某钢筋混凝土框架结构的顶层框架梁,混凝土强度等级为C30,纵筋采用HRB400级钢筋(),试问:该框架顶层端节点处梁上部纵筋的最大配箍率,与下列何项数值最为接近?
【背景资料】某安装公司承接了一大型超市的机电安装工程,将其中一项消防喷淋管道改造工程分包给了一家具有资质的专业公司施工。超市里出售有化妆品、纺织品、文化用品、百货等。超市每天营业时间从上午9时至晚上8时。甲方要求改造工程的实施不影响正常的营业,施
金融租赁公司属于()。
下列各项中,计入自行建造的投资性房地产的实际成本的有()。
变线是指本来相互平行的线与画面成一定角度,通过透视现象而彼此()的现象。
国家的最高监督权由()行使。
设有关键码序列(66,13,51,76,8l,26,57,69,23),要按关键码值递增的次序排序,若采用快速排序法,并以第一个元素为划分的基准,那么第一趟划分后的结果为
A、StudentslearningKorean.B、ChildrenofKoreanimmigrants.C、Koreanpopularculture.D、TheKoreanpopmusic.D新闻从开始就一直围绕着韩语学习的
最新回复
(
0
)