int[] num = { 8, 5, 7, 6, 54, 6, 4, 12, 2, 0, 1, 3 }; 2 //第一种 3 for (int i = 0; i < num.Length - 1; i++) 4 { 5 for (int j = 0; j < num.Length - i - 1; j++) 6 { 7 if (num[j] > num[j + 1]) 8 { 9 int temp = num[j]; 10 num[j] = num[j + 1]; 11 num[j + 1] = temp; 12 } 13 } 14 } 15 //第二种 16 for (int i = 0; i < num.Length - 1; i++) 17 { 18 for (int j = 0; j < num.Length - 1; j++) 19 { 20 if (num[j] > num[j + 1]) 21 { 22 int temp = num[j]; 23 num[j] = num[j + 1]; 24 num[j + 1] = temp; 25 } 26 } 27 } 28 //第三种 29 for (int i = 0; i < num.Length - 1; i++) 30 { 31 for (int j = 0; j < num.Length - 1 - i; j++) 32 { 33 if (num[j] > num[j + 1]) 34 { 35 int temp = num[j]; 36 num[j] = num[j + 1]; 37 num[j + 1] = temp; 38 } 39 } 40 } 41 //第四种: 42 for (int i = 0; i < num.Length - 1; i++) 43 { 44 for (int j = i + 1; j < num.Length; j++) 45 { 46 if (num[i] > num[j]) 47 { 48 int temp = num[i]; 49 num[i] = num[j]; 50 num[j] = temp; 51 } 52 } 53 }
C#中有提供专门排序的方法:System.Array.Sort(要排序的数组);//升序排序
升序排序可以先降序后再反转排序 。
数组降序排序:
int[] num = { 8, 5, 7, 6, 54, 6, 4, 12, 2, 0, 1, 3 }; 2 //第一种 3 for (int i = 0; i < num.Length - 1; i++) 4 { 5 for (int j = 0; j < num.Length - i - 1; j++) 6 { 7 if (num[j] < num[j + 1]) 8 { 9 int temp = num[j]; 10 num[j] = num[j + 1]; 11 num[j + 1] = temp; 12 } 13 } 14 } 15 //第二种 16 for (int i = 0; i < num.Length - 1; i++) 17 { 18 for (int j = 0; j < num.Length - 1; j++) 19 { 20 if (num[j] < num[j + 1]) 21 { 22 int temp = num[j]; 23 num[j] = num[j + 1]; 24 num[j + 1] = temp; 25 } 26 } 27 } 28 //第三种 29 for (int i = 0; i < num.Length - 1; i++) 30 { 31 for (int j = 0; j < num.Length - 1 - i; j++) 32 { 33 if (num[j] < num[j + 1]) 34 { 35 int temp = num[j]; 36 num[j] = num[j + 1]; 37 num[j + 1] = temp; 38 } 39 } 40 } 41 //第四种: 42 for (int i = 0; i < num.Length - 1; i++) 43 { 44 for (int j = i + 1; j < num.Length; j++) 45 { 46 if (num[i] < num[j]) 47 { 48 int temp = num[i]; 49 num[i] = num[j]; 50 num[j] = temp; 51 } 52 } 53 }