金榜之路
学大陪你
个性化辅导
关于我们  |  联系我们

【什么是起泡法-图】百科知识点

来源:学大教育     时间:2017-12-01 11:04:48


数学学习中有很多方法论,这些方法论促进了数学学科的完善和发展,因此大家必须掌握这些知识,下面学大教育网为大家带来【什么是起泡法-图】百科知识点,希望能够增加大家对数学学习的了解。

【什么是起泡法-图】百科知识点

起泡法是从一端开始比较的,第一次循环就是把最大数放到最后一个位置,第二次循环就是把第二最大数放到倒数第二位置。整个过程就像烧开水一样,较小值像水中的气泡一样逐趟往上冒,每一趟都有一块“最大”的石头沉到水底。

如此循环实现数据的排序。下面举一个用起泡法对n个数字进行排序的例子:#includevoid main(){int a[100];int n,i,j,t;printf("请输入要排序的数字个数:");scanf("%d",&n);printf("请输入各个数字:");for(i=0;ia[i+1]) /*相邻两个数比较*/{t=a[i];a[i]=a[i+1];a[i+1]=t;}printf("经过排序后的数字为:");for(i=0;i=left;i--){if(pData {iTemp = pData;pData = pData[i-1];pData[i-1] = iTemp;t = i;}}left = t+1;//反向的部分for(i=left;i {if(pData {iTemp = pData;pData = pData[i-1];pData[i-1] = iTemp;t = i;}}right = t-1;}while(left<=right);}分析上面的程序段我们可以发现正向起泡时第一次循环找出了最小数,反向起泡第一次循环找到最大数。很显然在一次循环中即可以找到一个最小的数还可以找到一个最大的数,所以用双向冒泡排序的交换的次数减少了,从而达到了优化起泡法的作用。

【什么是起泡法-图】百科知识点学大教育网为大家带来过了,希望大家能够认真了解这些方法论,相信对大家学好数学知识很有帮助。

网站地图 | 全国免费咨询热线: | 服务时间:8:00-23:00(节假日不休)

违法和不良信息举报电话:400-102-8926 举报邮箱:info@xueda.com 网上有害信息举报专区

京ICP备10045583号-6 学大Xueda.com 版权所有 北京学大信息技术集团有限公司 京公网安备 11010502031324号

增值电信业务经营许可证京B2-20100091 电信与信息服务业务经营许可证京ICP证100956