数组拆分排序

给定长度为 2n ****的整数数组 nums ,你的任务是将这些数分成 n ****对, 例如 (a1, b1), (a2, b2), ..., (an, bn) ,使得从 1nmin(ai, bi) 总和最大。

返回该 最大总和

scss 复制代码
输入: nums = [1,4,3,2]
输出: 4
解释: 所有可能的分法(忽略元素顺序)为:
1. (1, 4), (2, 3) -> min(1, 4) + min(2, 3) = 1 + 2 = 3
2. (1, 3), (2, 4) -> min(1, 3) + min(2, 4) = 1 + 2 = 3
3. (1, 2), (3, 4) -> min(1, 2) + min(3, 4) = 1 + 3 = 4
所以最大总和为 4
ini 复制代码
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;
    }
}

相关推荐
caimouse4 分钟前
mm学习笔记_04:VAD树算法与地址空间分配
笔记·学习·算法·reactos
程序员爱钓鱼8 分钟前
Rust 数组 Array 详解:定义、访问、遍历与切片
后端·rust
2501_9327502610 分钟前
Android 数据持久化解析
android·java
abcy07121311 分钟前
flink窗口类型
开发语言·python·算法
NWU_LK1 小时前
【WebFlux】第三篇 —— 常用操作符与数据流转换
java
Mr__Miss9 小时前
Java泛型完全指南:从入门到精通
java·开发语言·python
jinyishu_10 小时前
模拟实现 C++ 栈和队列——从适配器模式看懂 STL 容器之美
java·c++·适配器模式
前端工作日常10 小时前
我学习到的Java类和对象区别
java·后端
前端工作日常10 小时前
我学习到的Java类完整结构
java·后端
什巳11 小时前
JAVA练习309- 二叉树的层序遍历
java·数据结构·算法·leetcode