冒泡排序Bubble sort
原理是臨近的數字兩兩進行比較,按照從小到大或者從大到小的順序進行交換,
這樣一趟過去後,最大或最小的數字被交換到了最後一位,
然後再從頭開始進行兩兩比較交換,直到倒數第二位時結束
namespace 冒泡法排序
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("請輸入要排序的數組:");
string str = Console.ReadLine();
string[] str1 = str.Split(' ');
int[] arr = new int[str1.Length];
for(int i=0;i<str1.Length;i++)
{
arr[i] = Convert.ToInt16(str[i]);
}
int exchange = arr.Length - 1; //定義每次交換記錄的位置
int bound; //定義無序區的最後一個記錄
int temp; //定義交換中介數
while(exchange!=0)
{
bound = exchange; //設置無序區的最後一個記錄位置
exchange = 0; //設置初始排序使記錄交換的位置爲0
for(int i=0;i<bound;i++)
{
if(arr[i]>arr[i+1])
{
temp = arr[i];
arr[i] = arr[i +1];
arr[i + 1] = temp;
exchange = i;
}
}
}
//算法關鍵
Console.WriteLine("排序後爲:");
foreach(int s in arr)
{
Console.Write("{0} ", s);
}
Console.ReadLine();
}
}
}