熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> ASP編程 >> 正文

簡單介紹C#冒泡排序

2013-11-15 12:47:42  來源: ASP編程 

  今天主要是將排序算法中最簡單的C#冒泡排序所謂C#冒泡排序就是在每一次排序的過程中總有一個最大的值被移動到後面值小的就像水泡一樣浮到水面下面我們就看一下代碼重要的地方都有注釋大家可以看注釋

  C#冒泡排序代碼

  


    class SortingAlgorithms  
    {  
    private int[] arr;  
    private int upper;  
    private int numElement;  
     
    //初始化數組  
    public SortingAlgorithms(int size)  
    {  
    arr = new int[size];  
    upper = size  ;  
    numElement = ;  
    }  
     
    //給數組插入元素  
    public void Insert(int item)  
    {  
    arr[numElement] = item;  
    numElement++;  
    }  
     
    //打印數組元素  
    public void DisplayElement()  
    {  
    for (int i = ; i <= upper; i++)  
    {  
    ConsoleWriteLine(arr[i] +  );  
    }  
    ConsoleReadLine();  
    }  
     
    //冒泡排序  
    public void BubbleSort()  
    {  
    int Temp;  
    //外循環是限制一次冒泡排序比較的元素個數  
    for (int Outer = upper; Outer >= ; Outer)  
    {  
    //一次冒泡排序比較~ourter個元素的大小  
    for (int Inner = ; Inner <= Outer; Inner++)  
    {  
    //排序過程  
    if (arr[Inner] > arr[Inner + ])  
    {  
    Temp = arr[Inner];  
    arr[Inner] = arr[Inner + ];  
    arr[Inner + ] = Temp;  
    }  
    }  
    }  
    //thisDisplayElement();  
    }  
     
    }  
     
    一下是調用算法的過程  
    static void Main(string[] args)  
    {  
    SortingAlgorithms MyArray = new SortingAlgorithms();  
    Random rnd = new Random();  
    for (int i = ; i < ; i++)  
    {  
    MyArrayInsert((int)(rndNextDouble()*));  
    }  
    ConsoleWriteLine(Before Sorting:);  
    MyArrayDisplayElement();  
    //進行排序  
    MyArrayBubbleSort();  
    ConsoleWriteLine(After sorting);  
    //打印排序後的元素  
    MyArrayDisplayElement();  
    }  


From:http://tw.wingwit.com/Article/program/ASP/201311/21647.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.