首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明,以及用C++在开发过程中所编写的程序代码,将应填入(n)处的字句写在对应栏内。 【说明】 冒泡排序算法,作为Orderedlist<T,size>类的成员函数,last是有序表的元素个数。 template<typenam
阅读以下说明,以及用C++在开发过程中所编写的程序代码,将应填入(n)处的字句写在对应栏内。 【说明】 冒泡排序算法,作为Orderedlist<T,size>类的成员函数,last是有序表的元素个数。 template<typenam
admin
2010-01-15
92
问题
阅读以下说明,以及用C++在开发过程中所编写的程序代码,将应填入(n)处的字句写在对应栏内。
【说明】
冒泡排序算法,作为Orderedlist<T,size>类的成员函数,last是有序表的元素个数。
template<typename T,int size>void Orderedlist<T,size>∷BubbleSort(){
bool noswap; //交换标志
int i,j;
T temp;
for(i=0;i<last;i++)
{
noswap=(1);
for(j=(2);(3);(4))
{//从下往上冒泡
if(slist[j]<slist[j-1])
{
temp=slist[j];
slist[j]=slist[j-1];
slist[j-1]=temp;
noswap=(5);
}
}
if(noswap)break;
}
}
选项
答案
(1)true (2)last (3)j>i (4)j-- (5)false
解析
本题考查用C++实现冒泡排序。
题目要求用程序实现冒泡排序,其中last是有序表的元素个数,即需排序元素的个数。首先我们需要了解一下冒泡排序的方法。冒泡排序将被排序的记录数组R[1..n]垂直排列,每个记录R
看做是重量为ki的气泡。根据轻气泡不能在重气泡之下的原则,从下往上扫描数组R:凡扫描到违反本原则的轻气泡,就使其向上“飘浮”。如此反复进行,直到最后任何两个气泡都是轻者在上,重者在下为止。
冒泡排序的具体过程为:
第一步,先比较k1和k2,若k1>k2,则交换k1和k2所在的记录,否则不交换。继续对k2和k3重复上述过程,直到处理完kn-1和kn。这时最大的排序码记录转到了最后位置,称第1次起泡,共执行n-1次比较。
第二步,与第一步类似,从k1和k2开始比较,到kn-2和kn-1为止,共执行n-2次比较,称第2次起泡。
依此类推,共做n-1次起泡,完成整个排序过程。下面我们来具体分析程序。
第(1)空很明显是给布尔型交换标志变量noswap赋一个初值,从程序中不难发现,这个变量为真时,当前元素才可以进行交换操作,那么其初值应该是一个为真的值,因此此空答案为true。
第(2)空是给循环变量赋一个初值,这个循环的作用注释已经给出,是从下往上冒泡。题目中告诉我们序列中有last个元素,那么最下面的元素应该是第last个,因此此空答案为last。
第(3)空是循环的判断条件,根据我们上面的分析,每次起泡需要比较的次数为:总元素个数-已经起泡的次数,起泡的过程只需要执行到当前已经排好序的最后一个元素即可,因此此空答案为j>i。
第(4)空也在循环中,很明显是用来改变循环变量j的值,而这个循环变量是从last开始依次往上的过程,因此循环变量j的值应该是每次减少1,所以此空答案为j--。
第(5)空是给布尔型交换标志变量noswap赋一个值,它在循环的最后面,也就是说,在一次冒泡排序结束时的操作,根据题目的分析我们可以知道,每次冒泡排序都能排好一个元素在序列中的位置,而这个已经排好序的元素以后就不需要再参加排序过程了,因此应该将其标志变量noswap赋一个假值,因此此空答案为false。
转载请注明原文地址:https://kaotiyun.com/show/eIjZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
n=1,2,3,…,100时,[n/3]共有(4)________________个不同的数([a]表示a的整数部分,例如[3.14]=3)。
信息技术对传统教育方式带来了深刻的变化。以下叙述中,不正确的是(3)________________。
________________是按照科学的城市发展理念,利用新一代信息技术,通过人、物、城市功能系统之间的无缝连接与协同联动,实现自感知、自适应、自优化,形成安全、便捷、高效、绿色的城市形态。
某企业甲乙两个部门招聘职工中,男女应聘人数和录用人数情况如下表:从上表看出,各部门女性录用率都大于男性录用率。从该企业合计来看,()。
()不属于信息污染。
在Word2007中,若用户需要将一篇文章中的字符串“Internet”全部替换为字符串“因特网”,则可以在编辑菜单中选择()命令。
数据录入工作有两个指标:录入速度和错误率。一般而言,数据录入员在录入大批数据时,录入速度会(65),错误率会(66)。66
下列关于Word2007拼写和语法检查的叙述中,不正确的是__________。
回收的问卷调查表中,很多表都有一些没有填写的项。处理缺失值的办法有多种,需要根据实际情况选择使用。对于一般性的缺值项,最常用的有效方法是(66)。
阅读下列HTML文本和说明,在该HTML文本中存在5处错误,请指出错误所在的行号、错误原因及改正方法,把解答填入对应栏内。[说明]这是一个图片加载的题目,此Web页的名称为myhomcpage。[HTML文本](1)
随机试题
1824年前后,司汤达发表了被认为是法国批判现实主义文学宣言的美学论著______,提出“表现人民的习惯和信仰的现实状况”的现实主义主张。
建设项目安全设施设计完成后,生产经营单位应当按照相关规定向安全生产监督管理部门备案,并提交文件资料,包括()。
在()施工完后,应进行蓄水、淋水试验,观察无渗漏现象后交于下道工序。室内防水工程的施工环境温度应符合防水材料的技术要求,并宜在()以上。
隧道钻爆法开挖时,导火索是最常用的起爆品,导火索需要的长度根据炮工撤离现场的时间来确定,一般燃烧速度是()cm/s。
对于低压缩性黏土地基,建筑物在施工期间完成的沉降量与最终沉降量的比值,在下列何种数值范围之内?()
在多态的集中不同形式中,_____________多态是一种特定的多态,指同一个名字在不同上下文中可代表不同的含义。
Readthearticlebelowabouteducationalbackgroundofsuccessfulmanagers.Choosethebestwordtofilleachgap,fromA,B,C
I’mafraidthatIcan’t______muchenthusiasmforyourrecentplanforapicnic.
Youcouldn’thavecomeatabettertime.
Haveyoueverbeenaskedtotakeapolygraphtestforajob?Apolygraph,alsocalledaliedetector,isadevicethatisusedt
最新回复
(
0
)