C#冒泡排序详解

今天写一简单的冒泡排序,带有详细的中文注释,新手一定要看看! 因为这是找工作面试时经常 笔试 要考的题目。 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace 冒泡排序
{
    class Program
    {
        static void Main(string[] args)
        {

            int[] numbers = { 45, 86, 98, 64, 35, 65, 49, 86, 12, 26 };  //定义一个要排序的数组,这里可以随便写多少个数

            for (int i = 0; i < numbers.Length - 1; i++)  //外层 循环比较遍数
            {
                // 内层 循环交换数据次数
                //(注意每循环一遍就少交换一次,因为最大的数已经在最后面了,所以这里要减去 i 遍数)
                for (int j = 0; j < numbers.Length - 1 - i; j++)
                {
                    // 大于号就是从小到大排序,小于号就是从大到小排序
                    if (numbers[j] > numbers[j + 1])  //两个数进行比较,如果大于就交换
                    {
                        int temp = numbers[j]; //temp 两个数交换时要有第三个数来过度
                        numbers[j] = numbers[j + 1];
                        numbers[j + 1] = temp;

                    }
                }
            }
            //numbers.Length 数组的长度
            for (int i = 0; i < numbers.Length; i++) //循环输出
            {
                Console.WriteLine("{0}", numbers[i]);  
            }


            //这是C# 写法   遍历输出
            //foreach(类型  类型变量  in  数组)
            foreach (int s in numbers)
            {
                Console.WriteLine("C#遍历:{0}",s);
            }
        }
    }
}

 

posted @ 2014-05-31 19:48  阿凡同学  阅读(1240)  评论(0编辑  收藏  举报