展开全部
1、先将两数组排序,然后两数组先分别求和;
2、计算差值的绝对值,设为a,将a除以e5a48de588b632313133353236313431303231363533313333656462352后取整数,设为b;
3、然后将和大的数组中值最接近b的数与和小的数组中最小值交换。多次执行这个过程,直到绝对值最小为止。
例:
(1)public static void AverageArray();
(2){;
(3)int[] values = {1, 300, 20, 11, 5, 301};
(4)int n = values.Length / 2;
(5)int halfSum = values.Sum() / 2;
(6)List>> heap = new List>>(n + 1);
(7)heap.Add(new List>());
(8)heap[0].Add(new List());
(9)heap[0][0].Add(0);
(10)#region Seek the array;
(11)for (int k = 1; k <= 2 * n; k++);
(12){;
(13)int i = 1;
(14)if (k <= n);
(15){;
(16)i = k