假设给你两个恒定长度为3的整数数组,并且你总是确定给定两个arrray的两个元素将具有相同的值.
所以假设数组A有三个值:a,b,c.和数组B有三个值:d,e,f.
我们确信其中两个值是相同的.我们被要求将这四个不同的值放在大小为4的数组中,这样输出数组C应该在索引1和2中具有来自数组A和B的相同值,并且在索引0和3处它应该具有不同的值阵列A和B我实现了它,但是对这个解决方案真的不满意......有没有人有更好的解决方案?除了将我的计数器放在数组中的那个...... :)
int[] a = { 1, 201, 354 };
int[] b = { 404, 201, 354 };
int[] c = new int[4];
for (int i = 0; i < c.Length; i++)
{
Console.WriteLine(c[i]);
}
Run Code Online (Sandbox Code Playgroud)
对不起,我仔细阅读了,我觉得这就是你想要的.请指教.:)
int[] same = a.Intersect(b).ToArray(); ;
int[] diff = a.Union(b).Except(same).ToArray();
int[] c = new int[] { diff[0], same[0], same[1], diff[1] };
Run Code Online (Sandbox Code Playgroud)