用键盘输入n个数,已经按照从小到大顺序排好,现在另外给一个整数,请将该数查到序列中,并使新的序列任然有序。用Csharp写
时间: 2023-05-20 07:02:35 浏览: 81
有一个从小到大排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
以下是C#代码:
```
using System;
class Program
{
static void Main(string[] args)
{
int n = int.Parse(Console.ReadLine());
int[] nums = new int[n];
for (int i = 0; i < n; i++)
{
nums[i] = int.Parse(Console.ReadLine());
}
int x = int.Parse(Console.ReadLine());
int index = Array.BinarySearch(nums, x);
if (index < 0)
{
index = ~index;
}
Array.Resize(ref nums, n + 1);
for (int i = n; i > index; i--)
{
nums[i] = nums[i - 1];
}
nums[index] = x;
foreach (int num in nums)
{
Console.WriteLine(num);
}
}
}
```
这个程序可以读取用户输入的n个数,并将它们存储在一个数组中。然后,它会读取一个整数x,并使用二分查找算法将x插入到数组中,以保持数组的有序性。最后,程序会输出新的有序数组。
阅读全文