黑马程序员技术交流社区

标题: 冒泡排序的实例推理 [打印本页]

作者: 于振发    时间: 2013-9-25 16:48
标题: 冒泡排序的实例推理
小弟总结了一下冒泡排序的推理过程,请各位高手多多指教
      冒泡排序 升序排列 或者 降序排列
9 8 7 6 5 4 3 2 1 0    //0 1 2 3 4 5 6 7 8 9

8 7 6 5 4 3 2 1 0 9   第一趟比较  交换了9次   i=0  j=9   numbers.Length-1-i
7 6 5 4 3 2 1 0 8 9   第二趟比较  交换了8次   i=1  j=8   numbers.Length-1-i
6 5 4 3 2 1 0 7 8 9   第三趟比较  交换了7次   i=2  j=7   numbers.Length-1-i
5 4 3 2 1 0 6 7 8 9   第四趟比较  交换了6次   i=3  j=6
4 3 2 1 0 5 6 7 8 9   第五趟比较  交换了5次   i=4  j=5
3 2 1 0 4 5 6 7 8 9   第六趟比较  交换了4次   i=5  j=4
2 1 0 3 4 5 6 7 8 9   第七趟比较  交换了3次   i=6  j=3
1 0 2 3 4 5 6 7 8 9   第八趟比较  交换了2次   i=7  j=2
0 1 2 3 4 5 6 7 8 9   第九趟比较  交换了1次   i=8  j=1
int[] numbers={9,8,7,6,5,4,3,2,1,0};
//外面的循环 用来控制比较的趟数
for(int i=0;i<numbers.Length-1;i++)
{
for(int j=0;j<numbers.Length-1-i;j++)
{
  if(numbers[j]>numbers[j+1])
  {
  int temp=numbers[j];
  numbers[j]=numbers[j+1];
  numbers[j+1]=temp;
  }
}
}

作者: SunshineGirl    时间: 2013-9-28 16:58
尽量发提问或回答问题的贴子。
作者: 于振发    时间: 2013-9-28 17:37
嗯,知道了,谢谢蔡姐.




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2