皮皮学,免费搜题
登录
logo - 刷刷题
搜题
【简答题】
阅读下列函数说明和C代码,回答下面问题。 [说明] 冒泡排序算法的基本思想是:对于无序序列(假设扫描方向为从前,进行升序排列),两两比较相邻数据,若反序则交换,直到没有反序为止。一般情况下,整个冒泡排序需要进行众(1≤k≤n)趟冒泡操作,冒泡排序的结束条件是在某一趟排序过程中没有进行数据交换。若数据初态为正序时,只需1趟扫描,而数据初态为反序时,需进行n-1趟扫描。在冒泡排序中,一趟扫描有可能无数据交换,也有可能有一次或多次数据交换,在传统的冒泡排序算法及近年的一些改进的算法中[2,3],只记录一趟扫描有无数据交换的信息,对数据交换发生的位置信息则不予处理。为了充分利用这一信息,可以在一趟全局扫描中,对每一反序数据对进行局部冒泡排序处理,称之为局部冒泡排序。 局部冒泡排序的基本思想是:对于N个待排序数据组成的序列,在一趟从前扫描待排数据序列时,两两比较相邻数据,若反序则对后一个数据作一趟前向的局部冒泡排序,即用冒泡的排序方法把反序对的后一个数据向前排到适合的位置。扫描第—对数据对,若反序,对第2个数据向前冒泡,使前两个数据成为,有序序列;扫描第二对数据对,若反序,对第3个数据向前冒泡,使得前3个数据变成有序序列;……;扫描第i对数据对时,其前i个数据已成有序序列,若第i对数据对反序,则对第i+1个数据向前冒泡,使前i+1个数据成有序序列;……;依次类推,直至处理完第n-1对数据对。当扫描完第n-1对数据对后,N个待排序数据已成了有序序列,此时排序算法结束。该算法只对待排序列作局部的冒泡处理,局部冒泡算法的 名称由此得来。 以下为C语言设计的实现局部冒泡排序策略的算法,根据说明及算法代码回答问题1和问题2。 [变量说明] define N=100 //排序的数据量 typedef struct{ //排序结点 int key; info datatype; ...... }node; node SortData[N]; //待排序的数据组 node类型为待排序的记录(或称结点)。数组SortData[]为待排序记录的全体称为一个文件。key是作为排序依据的字段,称为排序码。datatype是与具体问题有数据类型。下面是用C语言实现的排序函数,参数R[]为待排序数组,n是待排序数组的维数,Finish为完成标志。 [算法代码] void Part-BubbleSort (node R[], int n) { int=0 ; //定义向前局部冒泡排序的循环变量 //暂时结点,存放交换数据 node tempnode; for (int i=0;i<n-1;i++) ; if (R[i].key>R[i+1].key) { (1) while ( (2) ) { tempnode=R[j] ; (3) R[j-1]=tempnode ; Finish=false ; (4) } // end while } // end if } // end for } // end function 阅读下列函数说明和C代码,将入(n)处的字句写在的对应栏内。
手机使用
分享
复制链接
新浪微博
分享QQ
微信扫一扫
微信内点击右上角“…”即可分享
反馈
参考答案:
举一反三
【单选题】病人享有平等医疗权,其伦理要求体现在
A.
医疗机会平等
B.
人际交往平等
C.
医疗卫生资源分配平等
D.
B和C
【单选题】最不可能合并甲亢或甲低的甲状腺疾病是:
A.
滤泡性腺瘤
B.
桥本甲状腺炎
C.
Riedel甲状腺肿
D.
毒性甲状腺肿
【简答题】供大于求的、供不应求的不平衡运输问题,分别是指 的运输问题、 的运输问题。
【单选题】汽轮机的级是由 组成的。
A.
隔板+喷嘴
B.
汽缸+转子
C.
喷嘴+动叶
D.
主轴+叶轮
【多选题】内含扩大再生产的优点包括()
A.
A大幅提高劳动生产率
B.
B有利于建立新的新的生产部门
C.
C提高经济效益
D.
D充分发挥现有生产要素的积极作用
【多选题】内含扩大再生产的优点包括()
A.
大幅提高劳动生产率
B.
有利于建立新的新的生产部门
C.
提高经济效益
D.
充分发挥现有生产要素的积极作用
【判断题】计算机控制系统是工业自动化系统的基本组成部分之一。
A.
正确
B.
错误
【简答题】大疆无人机精灵4PRO如何开启和关闭遥控器和飞行器电源
【单选题】病人享有平等医疗权,其伦理要求体现在
A.
医疗机会平等
B.
人际交往平等
C.
医疗卫生资源分配平等
D.
A和B
E.
B和C
【单选题】最不可能合并甲亢或甲低的甲状腺疾病是
A.
滤泡性腺瘤
B.
桥本甲状腺炎
C.
Riedel甲状腺肿
D.
毒性甲状腺肿
E.
甲状腺发育不全
相关题目:
参考解析:
知识点:
题目纠错 0
发布
创建自己的小题库 - 刷刷题