剛出來工作的時侯,面試有遇上這題當下慘死,現在想起來練習記錄一下。
i 層迴圈為 Ary 陣列當前位置,每次 i + 1 代表,以當前 i 進入 k 層迴圈進行排序比對。
k 層迴層為 Ary 陣列中值進行比對排序,k 層迴圈將以 i 為基準來當做 Ary 當前位置,並將陣列中最小數值移至最前方。
static void Main(string[] args)
{
int temp = 0;
int[] Ary = new int[] { 12, 9, 6, 2, 4, 1, 11, 8, 3, 5, 7, 10, 13 };
for(int i =0; i < Ary.Length; i++)
{
for(int k = i + 1; k < Ary.Length; k++)
{
if(Ary[i] > Ary[k])
{
temp = Ary[k];
Ary[k] = Ary[i];
Ary[i] = temp;
}
}
Console.WriteLine($"{Ary[i]}");
}
Console.Read();
}