码迷,mamicode.com
首页 > 编程语言 > 详细

[游戏开发-学习笔记]菜鸟慢慢飞(六)- 冒泡排序

时间:2016-12-28 20:12:49      阅读:135      评论:0      收藏:0      [点我收藏+]

标签:name   oid   冒泡   font   二次   学习笔记   param   算法   static   

 1         /// <summary>
 2         /// 冒泡排序算法
 3         /// </summary>
 4         /// <param name="array"></param>
 5         public static void sort(int[] arr)
 6         {
 7             int temp = 0;
 8             for (int i = 0; i < arr.Length - 1; i++)
 9             {
10                 for (int j = 0; j < arr.Length - 1 - i; j++)
11                 {
12                     if (arr[j] > arr[j + 1])
13                     {
14                         temp = arr[j + 1];
15                         arr[j + 1] = arr[j];
16                         arr[j] = temp;
17                     }
18                 }
19             }
20         }

小记:

    • i < arr.Length - 1,外循环,最后一次比较:最后一位数(没动过)VS 倒数第二位数(可能是交换过的);最后一位数比较完毕了,所以循环次数为 “arr.Length - 1”;
    • j < arr.Length - 1 - i,内循环,
      • 第一次循环(i=0),比只较到末尾的一对,所以循环次数要“arr.Length - 1 ”
      • 第二次循环(i=1),末尾的一对已经比较过了,不需要再比较,我们比较到倒数第二组为止,所以j的循环次数要“arr.Length - 1-1”
      • 第三次循环(i=2),末尾的两对已经比较过了,我们比较到倒数第三组为止,所以j的循环次数要“arr.Length - 1-2”
      • 类推得出“ j < arr.Length - 1 - i”;

[游戏开发-学习笔记]菜鸟慢慢飞(六)- 冒泡排序

标签:name   oid   冒泡   font   二次   学习笔记   param   算法   static   

原文地址:http://www.cnblogs.com/workhai/p/6230356.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!