题目标签
Array
题意及思路
题意:这道题目给了我们一个数组有2n integers, 需要我们把这个数组分成n对,然后从每一对里面拿小的那个数字,把所有的加起来,返回这个sum。并且要使这个sum 尽量最大。
思路:如果一个小的数和一个很大的数凑在一起,那这样就会浪费那个大的数,所以我们可以进行一次排序,然后从小开始两两组队。即将下标为0,2,4 ...位置的数加起来即可。
代码
class Solution { public int arrayPairSum(int[] nums) { Arrays.sort(nums); int ans = 0; for(int i=0;i<nums.length;i+=2){ ans += nums[i]; } return ans; } }