static void InsertSort(int[] nums)
{
//外层循环控制要插入的元素
for (int i = 1; i <= nums.Length - 1; i++)
{
int index=i;
int insert=nums[i];
//控制要比较的元素(找位置)
for (int j = 0; j <= i - 1; j++)
{
if (nums[i] >nums[j])
{
index = j;
break;
}
}
//挪位置
for (int k = i - 1; k >= index; k--)
{
nums[k + 1] = nums[k];
}
//插入
nums[index] = insert;
}
}
static void Main(string[] args)
{
int[] nums = new int[10];
Random random = new Random();
for (int index = 0; index < nums.Length; index++)
{
nums[index] = random.Next(100);
}
Console.WriteLine("排序前的数组");
foreach (var n in nums)
{
Console.Write(n + "\t");
}
Console.WriteLine();
Console.WriteLine();
//调用排序方法(将待排序的数组传递)
//BubbleSort(nums);
//ChoiceSort(nums);
//InsertSort(nums);
Console.WriteLine("排序后的数组");
foreach (var n in nums)
{
Console.Write(n + "\t");
}
Console.WriteLine();
}
}
插入法排序
最新推荐文章于 2023-03-06 15:54:28 发布