代码写了试了一下冒泡排序的代码,发现网上大多数冒泡排序是由问题的,这里我写一下正解的冒泡排序。
这里我把冒泡排序的方法封装在一个类里,以后想排序的时候直接调用就行了
1 public void MaoPao(int[] list) 2 { 3 int temp; 4 for (int i = 0; i < list.Length - 1; i++) 5 { 6 for (int j = i + 1; j < list.Length; j++) 7 { 8 if (list[j] < list[i]) 9 { 10 temp = list[j]; 11 list[j] = list[i]; 12 list[i] = temp; 13 } 14 } 15 } 16 }
然后我们定义一个int数组,现在我们来排序试试我们的冒泡排序有没有用
这里我遇到的问题有最后比较的数据转换问题,首先是把每次比较的最小数赋给定义的int变量tem,然后是把最大数赋给j,最后是把tem赋给i,这是例子,你想输出别的参数也可以,然后就是i初始值是0,j的初始值是i+1,我觉得最容易出错的地方就是这两个了。
1 static void Main(string[] args) 2 { 3 int[] array = { 12, 13, 14, 69, 58, 78, 70, 85, 99, 23, 56, 42, 32 }; 4 5 Class1 class1 = new Class1(); 6 class1.MaoPao(array); 7 for (int i = 0; i < array.Length; i++) 8 { 9 Console.Write("第{0}个数是{1} ", i + 1, array[i]); 10 } 11 Console.ReadKey(); 12 }