直接插入排序
基本原理:
在一个有序的数字队列中,插入一个新的数字并维持排序。
图解:7 5 3 9从小到大排序:
具体实现方法:
1 private static void Sort() 2 { 3 int[] LiArray = new int[] { 7, 5, 3, 9 }; 4 5 for (int i = 1; i < LiArray.Length; i++) 6 { 7 //当前数字,循环比较前面所有数字。 8 for (int j = i; j > 0; j--) 9 { 10 if (LiArray[j] < LiArray[j - 1]) 11 { 12 //交换位置 13 Swap(LiArray, j - 1, j); 14 } 15 } 16 } 17 } 18 19 private static void Swap(int[] liArray, int first, int after) 20 { 21 liArray[first] = liArray[first] ^ liArray[after]; 22 liArray[after] = liArray[first] ^ liArray[after]; 23 liArray[first] = liArray[first] ^ liArray[after]; 24 }