C# 如何合并两个数组并使其排序,现在开始

C# 如何合并两个数组并使其排序,现在开始,c#,visual-c++,C#,Visual C++,我目前正在寻找如何使用类和对象对数组进行排序,以及如何在main函数中使用它而不是“Array.Sort();”,我想使用自己创建的排序函数而不是使用Array.Sort(arr)函数 int[]arr1=newint[5]{2,5,1,7,4}//声明的第一个数组 int[]arr2=新的int[5]{10,16,13,17,15}; int[]arr3=新int[10]; int k=0; Console.WriteLine(“第一个数组:”); 对于(int i=0;i您编写的代码太多,超

我目前正在寻找如何使用类和对象对数组进行排序,以及如何在main函数中使用它而不是“Array.Sort();”,我想使用自己创建的排序函数而不是使用Array.Sort(arr)函数

int[]arr1=newint[5]{2,5,1,7,4}//声明的第一个数组
int[]arr2=新的int[5]{10,16,13,17,15};
int[]arr3=新int[10];
int k=0;
Console.WriteLine(“第一个数组:”);

对于(int i=0;i您编写的代码太多,超出了需要),您可以简单地使用Linq:

int[] arr1 = new int[5] { 2, 5, 1, 7, 4 };
int[] arr2 = new int[5] { 10, 16, 13, 17, 15 };
int[] arr3 = arr1.Concat(arr2).OrderBy(x => x).ToArray();

有很多排序算法,我写了一个伪代码,很容易转换成C#(留给你一些工作)。对于一个非常简单的算法,它基本上寻找最小的元素并将其放在左边:

declare min = 0, i, k

for i=0 to array length

   for k=i+1 to array length

   if array[k] < array[i] then
     swap array[i] , array[k]


--------------------

swap a,b:

declare temp =  a

a=b

b=temp
声明最小值=0,i,k
对于i=0到数组长度
对于k=i+1的数组长度
如果数组[k]

祝你好运!

为什么你想使用你自己的排序函数?你的问题是什么?看看,它可能会提供你需要的一切。也就是说,为你所输入的类实现接口。为什么这个问题被标记为C++和C++?你的实际问题有什么更具体的吗?你会怎么说?t?你得到了什么?实际上,我可以自由地编写每个逻辑,而不是使用库函数,我知道它可能会简化,但这不是我想要的for@HamdanKaiser您尝试执行的自定义排序是什么?预期输出是什么?请具体说明。该行int[]arr3=arr1.Concat(arr2.OrderBy(x=>x).ToArray();没有给出确切的输出,我建议您看看please@HamdanKaiser我们甚至不知道预期的输出是什么。上面的代码合并了两个列表,然后对结果进行升序排序。
1 2 4 5 7 10 13 15 16 17
您预期的输出是什么?
declare min = 0, i, k

for i=0 to array length

   for k=i+1 to array length

   if array[k] < array[i] then
     swap array[i] , array[k]


--------------------

swap a,b:

declare temp =  a

a=b

b=temp