插入排序:从未排序的数组中,先选一个作为有序的,然后依次增加一个元素,与有序数组比较的最后一个比较,如果比较小,则交换位置,直到不能交换,跳出。最好时间复杂度:顺序时 n,最坏时间复杂度:逆序时 n2.
1 public int[] Test(int[] ts) 2 { 3 for (int i = 1; i < ts.Length; i++) 4 { 5 for (int j = i; j >0; j--) 6 { 7 if (ts[j] < ts[j - 1]) 8 { 9 ts[j] += ts[j - 1]; 10 ts[j - 1] = ts[j] - ts[j - 1]; 11 ts[j] = ts[j] - ts[j - 1]; 12 } 13 else 14 break; 15 } 16 } 17 return ts; 18 }