插入排序就是每一步都将一个待排数据按其大小插入到已经排序的数据中的适当位置,直到全部插入完毕。
插入排序适合有序的序列进行排序
static void Main(string[] args)
{
int[] array = { 42, 20, 17, 13, 28, 14, 23, 15 };
insertSort(array);
Console.ReadLine();
}
private static void PrintSortedResult(int[] inputArray, int num)
{
//打印操作结果
StringBuilder sb = new StringBuilder();
for (int i = 0; i < inputArray.Length; i++)
{
if (i == 0)
{
sb.Append(inputArray[i].ToString());
}
else
{
sb.Append("," + inputArray[i].ToString());
}
}
Console.WriteLine("第" + num + "次排序的结果: " + sb.ToString() + "\r\n");
}
private static void insertSort(int[] array)
{
for (int i = 1; i < array.Length; i++)
{
for (int j = 0; j < i; j++)
{
if (array[i] < array[j])
{
int tmp = array[i];
array[i] = array[j];
array[j] = tmp;
}
}
PrintSortedResult(array, i);
}
}