首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和c代码,回答问题1至问题3,将解答写在对应栏内。 [说明] 某应用中需要对100000个整数元素进行排序,每个元素的取值在0~5之间。排序算法的基本思想是:对每一个元素x,确定小于等于x的元素个数(记为m),将x放在输出元素序列的
阅读下列说明和c代码,回答问题1至问题3,将解答写在对应栏内。 [说明] 某应用中需要对100000个整数元素进行排序,每个元素的取值在0~5之间。排序算法的基本思想是:对每一个元素x,确定小于等于x的元素个数(记为m),将x放在输出元素序列的
admin
2012-03-21
24
问题
阅读下列说明和c代码,回答问题1至问题3,将解答写在对应栏内。
[说明]
某应用中需要对100000个整数元素进行排序,每个元素的取值在0~5之间。排序算法的基本思想是:对每一个元素x,确定小于等于x的元素个数(记为m),将x放在输出元素序列的第m个位置。对于元素值重复的情况,依次放入第m-1、m-2、…个位置。例如,如果元素值小于等于4的元素个数有10个,其中元素值等于4的元素个数有3个,则4应该在输出元素序列的第10个位置、第9个位置和第8个位置上。
算法具体的步骤为:
步骤1:统计每个元素值的个数。
步骤2:统计小于等于每个元素值的个数。
步骤3:将输入元素序列中的每个元素放入有序的输出元素序列。
[C代码]
下面是该排序算法的C语言实现。
(1)常量和变量说明
R:常量,定义元素取值范围中的取值个数,如上述应用中R值应取6。
i:循环变量。
n:待排序元素个数。
a:输入数组,长度为n。
b:输出数组,长度为n。
c:辅助数组,长度为R,其中每个元素表示小于等于下标所对应的元素值的个数。
(2)函数sort
1 void sort(int n, int a[], int b[]) {
2 int c[R], i;
3 for(i=0; i< (1) ; i++) {
4 c
=0;
5 }
6 for(i=0; i<n; i++) {
7 c[a
]= (2) ;
8 }
9 for(i=1; i<R; i++) {
10 c
= (3) ;
11 }
12 for(i=0; i<n; i++) {
13 b[c[a
]-1]= (4) ;
14 c[a
]=c[a
]-1;
15 }
16 }
根据以上C代码,分析该排序算法是否稳定。若稳定,请简要说明(不超过100字);若不稳定,请修改其中代码使其稳定(给出要修改的行号和修改后的代码)。
选项
答案
不稳定。修改第12行的for循环为for(i=n-1; i>=0; i--)即可。
解析
从图(k)可以看出,算法不稳定。算法不稳定的原因在于将数组a中元素放到数组b中时,是从数组a的第一个元素开始,依次取出元素放到数组b中。这样,相同的两个元素值,在数组a中的相对位置和在数组b中的相对位置正好相反。若从数组a的最后一个元素开始,依次向前取元素放到b数组中,可以保持相同元素的相对位置。因此将第12行的代码for(i=0; i<n; i++)改为for(i=n-1; i>0; i--),则排序算法是稳定的。
转载请注明原文地址:https://jikaoti.com/ti/Y3i7FFFM
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
程序运行过程中常使用参数在函数(过程)间传递信息,引用调用传递的是实参的()。
一个Web信息系统所需要进行的测试包括____________。①功能测试②性能测试③可用性测试④客户端兼容性测试⑤安全性测试
为了能按时交付系统,开发小组在实现“确定最优任务分配方案”功能时采用了蛮力的方法。在系统交付后,对可能出现更多任务量的情况,采用更有效的方法来实现该功能,这属于()。
某应用系统采用防火墙技术来实现安全防护,在进行安全防护测试时,设计的测试点不包括______。
假设系统采用PV操作实现进程同步与互斥。若n个进程共享两台打印机,那么信号量S的取值范围为()。
计算机采用分级存储体系的主要目的是为了解决()的问题。
函数t()、f()的定义如下所示。若调用函数t()时传递给x的值为3,并且调用函数f()时,第一个参数采用传值(call by value)方式,第二个参数采用传引用(call by reference)方式,则函数t0的返回值为(33).
用边界值分析法,假定X为整数,10≤X≤100,那么X在测试中应该取(40)边界值。
随机试题
Alandfreefromdestruction(破坏),pluswealth,naturalresources,andlaborsupply—allthesewereimportant【C1】______inhelping
患者,女,55岁。已闭经,体态肥胖,近年来,出现不明原因全身无力,易疲劳;查血压17.2/12.0kPa,心肺无异常,饭后尿糖(+),空腹尿糖(-),疑糖尿病。假如该患者被确诊为糖尿病以后,在治疗过程中,出现心悸、出汗等表现,应考虑
违反《重大动物疫情应急条例》规定,擅自采集重大动物疫病病料,或在重大动物疫病病源分离时不遵守国家有关生物安全规定的,由动物卫生监督机构给予警告,并处罚款()。
按照法律的一般分类标准,《中华人民共和国教师法》属于( )。
甲于某日晨在路边捡回一名弃婴,抚养了3个月后,声称是自己的亲生儿子,以3000元卖给乙。如何认定甲的行为?
《溪山行旅图》的作者是宋代画家郭熙。()
某小区高层住宅突发火情,公安消防部门接警后及时处警,当消防人员抵达后,电梯因大火而停用,有3组10多位消防员先行通过爬楼梯登楼(即图示的消防楼梯),第一时间打开北面保姆房开展救援行为。下图为这次火灾的现场示意图:火情发生后,该高档小区所在社区的民警李
法院调解就是指在人民法院审判人员主持下,双方当事人自愿就民事权益争议平等协商。达成协议。从而解决纠纷所进行的活动。根据以上定义,下列属于法院调解的是()。
有经验的司机完全有能力习惯以120千米的时速在高速公路上安全行驶,为了迅速提高道路的使用效率,某条高速公路的最高时速限制由原来100千米转为120千米。以下哪项如果为真,最能质疑上述主张?
Youprobablyhavenoticedthatpeopleexpresssimilarideasindifferentways,dependingonthesituationtheyarein.Thisisv
最新回复
(
0
)