数组拆分
一 题目
来源:leetcode官网
给定长度为 2n 的整数数组 nums ,你的任务是将这些数分成 n 对, 例如 (a1, b1), (a2, b2), …, (an, bn) ,使得从 1 到 n 的 min(ai, bi) 总和最大。返回该最大总和 。
二 解题
将字符串排序,最小的和次小的一组,再次和更次一组,依次排,这样就能取到第二大,第四大等等的元素,使得min(ai, bi) 总和最大。
class Solution {
public int arrayPairSum(int[] nums) {
int tmp;
int result=0;
Arrays.sort(nums);
tmp=0;
while (tmp< nums.length){
result+=nums[tmp];
tmp+=2;
}
return result;
}
}