冒泡排序的算法详解

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

//编一个程序,从键盘输入10个实数,存入一个数组,用冒泡法对这个数作升序排序。/*冒泡排序算法的运作如下:1.比较相邻的元素。如果第一个比第二个大,就交换他们两个。2.对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。3.针对所有的元素重复以上的步骤,除了最后一个。4.持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。*/冒牌排序详解:例:用冒泡排序的方法将下面一组无序数组排成从小到大的顺序。{49,38,65,97,76,13,27,49}分析:首先为了方便分析,我们把所给的数据先用一个表格列出来,如下:序号12345678数据4938659776132749第一趟排序的步骤:4938,交换位置序号12345678数据3849659776132749原始数据4965,保持不变序号12345678数据3849659776132749序号12345678数据38496597761327496597,保持不变序号12345678数据3849659776132749序号12345678数据38496597761327499776,交换位置序号12345678数据3849657697132749序号12345678数据38496597761327499713,交换位置序号12345678数据3849657697132749序号12345678数据3849657613972749序号12345678数据38496576139727499727,交换位置序号12345678数据3849657613279749序号12345678数据38496576132797499749,交换位置序号12345678数据3849657613274997第一趟排序后的数据和序号序号12345678数据3849657613274997第二趟排序的步骤:3849,保持不变序号12345678数据38496576132749974965,保持不变序号12345678数据3849657613274997序号12345678数据38496576132749976576,保持不变序号12345678数据3849657613274997序号12345678数据38496576132749977613,交换位置序号12345678数据3849657613274997序号12345678数据3849651376274997序号12345678数据38496513762749977627,交换位置序号12345678数据3849651327764997序号12345678数据38496513277649977649,交换位置序号12345678数据3849651327497697序号12345678数据38496513274976977697,保持不变序号12345678数据3849651327497697usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;namespace冒泡排序{//编一个程序,从键盘输入10个实数,存入一个数组,用冒泡法对这个数作升序排序classProgram{staticvoidMain(string[]args){inti,j;inttemp;int[]a=newint[10];//从键盘输入10个实数Console.WriteLine(请输入10个实数:);for(i=0;i10;i++){Console.Write(请输入第{0}个数:,i);a[i]=int.Parse(Console.ReadLine());}//存入一个数组。排序前的数据Console.Write(排序前的数据顺序:);for(i=0;i10;i++){Console.Write({0,4},a[i]);}//用冒泡法对这个数作升序排序for(i=0;i10;i++)//元素的个数。{for(j=0;j9;j++)//相邻的2个数比较,每次都要比较9次。要比较的次数比元素个数少1次{if(a[j]a[j+1]){temp=a[j];a[j]=a[j+1];a[j+1]=temp;}}}//冒泡排序后的数据顺序Console.Write(\n排序后的数据顺序:);for(i=0;i10;i++){Console.Write({0,4},a[i]);}Console.ReadKey();}}}以上就是一个冒泡排序的C#代码

1 / 19
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功