0002-整数对最小和-java知识点

题目描述

给定两个整数数组 array1 array2
数组元素按升序排列
假设从array1 array2中分别取出一个元素可构成一对元素
现在需要取出K个元素
并对取出的所有元素求和
计算和的最小值
注意:
两对元素如果对应于array1 array2中的两个下标均相同,则视为同一个元素

输入描述

输入两行数组array1 array2
每行首个数字为数组大小 size( 0 < size <= 100)
array1,array2中的每个元素e, 0< e <1000
接下来一行为正整数k (0 < k <= array1.size() * array2.size())

输出描述

满足要求的最小和

解题思路

  • 获取输入的两个数组array1 array2
  • 循环进行各个形式的排列组合,得出结果放到新数组list
  • 进行新数组list的升序排列
  • 再根据需要取几组数据,在list中取出进行相加

注意项

注意项1

Collections.sort() 对list集合进行排序

Collections.sort(list, (a1, a2) -> a1.compareTo(a2));

compare(int o1, int o2)方法 return o1 - o2 是升序,return o2 - o1 是降序
Java中Collections.sort()方法详解

注意项2

Arrays.sort() 对数组进行排序

Arrays.sort(nodes, new Comparator() {
public int compare(Node a, Node b) {
return a.val - b.val;
}
});

java中的Arrays.sort()的几种用法

想要看看两者关系的可看看:java刷题必备排序,Arrays.sort()和Collections.sort()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值