- 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-09-23 17:47:53 发布