题目

给定一个随机的整数(可能存在正整数和负整数)数组 nums ,请你在该数组中找出两个数,其和的绝对值(|nums[x]+nums[y]|)为最小值,并返回这个两个数(按从小到大返回)以及绝对值。
每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。

输入描述:

一个通过空格分割的有序整数序列字符串,最多1000个整数,且整数数值范围是 [-65535, 65535]。
输出描述:
两数之和绝对值最小值

示例1

输入

-1 -3 7 5 11 15

输出

-3 5 2

说明

因为 |nums[0] + nums[2]| = |-3 + 5| = 2 最小,所以返回 -3 5 2

代码实现

package com.winyar.algorithm.od;import java.util.*;/*** @Describe 乱序整数序列两数之和绝对值最小* @Author Winyar* @Date 2022/6/19*/
public class MinAbsSum {public static void main(String[] args) {Scanner sc = new Scanner(System.in);while (sc.hasNextLine()) {String[] split = sc.nextLine().split(" ");int length = split.length;int[] arr = new int[length];for (int i = 0; i < length; i++) {arr[i] = Integer.parseInt(split[i]);}// 记录最小绝对值int min = Integer.MAX_VALUE;int[] minArr = new int[2];for (int i = 0; i < length - 1; i++) {for (int j = i + 1; j < length; j++) {int sum = Math.abs(arr[i] + arr[j]);if (sum < min) {min = sum;minArr[0] = arr[i];minArr[1] = arr[j];}}}Arrays.sort(minArr);for (int i : minArr) {System.out.print(i + " ");}System.out.println(min);}sc.close();}
}

JAVA求解【乱序整数序列两数之和绝对值最小】相关推荐

  1. JS前端算法:乱序整数序列两数之和绝对值最小

    // 乱序整数序列两数之和绝对值最小 function sortAbs(arr) {let tmp = arr.sort((a, b) => a - b); // 先排序,感觉也可以不排序if ...

  2. 华为OD机试 - 乱序整数序列两数之和绝对值最小 | 机试题算法思路 【2023】

    最近更新的博客 华为OD机试 - 简易压缩算法(Python) | 机试题算法思路 [2023] 华为OD机试题 - 获取最大软件版本号(JavaScript) 华为OD机试 - 猜字谜(Python ...

  3. 【华为OD机试真题 Python】乱序整数序列之两数之和绝对值最小

    前言:本专栏将持续更新华为OD机试题目,并进行详细的分析与解答,包含完整的代码实现,希望可以帮助到正在努力的你.关于OD机试流程.面经.面试指导等,如有任何疑问,欢迎联系我,wechat:steven ...

  4. 两个数和两数之和绝对值

    """ /* 给定一个随机的整数数组(可能存在正整数和负整数)nums, 请你在该数组中找出两个数,其和的绝对值(|nums[x]+nums[y]|)为最小值 并返回这两 ...

  5. java 1099_【LeetCode(Java) - 1099】小于 K 的两数之和

    [LeetCode(Java) - 1099]小于 K 的两数之和 [LeetCode(Java) - 1099]小于 K 的两数之和 文章目录 1.题目描述 2.解题思路 3.解题代码 1.题目描述 ...

  6. LeetCode 01【两数之和】【LeetCode人生第一题!】

    刷题官网:https://leetcode-cn.com/ 目   录 题目 官方题解 方法一:暴力法 方法二:两遍哈希表 方法三:一遍哈希表 初次提交 题目 官方题解 方法一:暴力法 暴力法很简单, ...

  7. 两数之和(Python + Java)

    给定一个整数数组 nums 和一个整数目标值 target,在该数组中找出和为目标值 target 的那两个整数,并返回它们的数组下标. 可假设每种输入只会对应一个答案.但是,数组中同一个元素在答案里 ...

  8. 找出数组中两数之和为指定值的所有整数对

    一,问题描述 给定一个整型数组(数组中的元素可重复),以及一个指定的值.打印出数组中两数之和为指定值的 所有整数对 二,算法分析 一共有两种方法来求解.方法一借助排序,方法二采用HashSet 方法一 ...

  9. Leetcode刷题第1题:两数之和(基于Java语言)

    ** Leetcode刷题第1题:两数之和(基于Java语言) ** 题目: 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标 ...

  10. leetCode:twoSum 两数之和 【JAVA实现】

    LeetCode 两数之和 给定一个整数数组,返回两个数字的索引,使它们相加到特定目标. 您可以假设每个输入只有一个解决方案,并且您可能不会两次使用相同的元素. 更多文章查看个人博客 个人博客地址:t ...

最新文章

  1. 基本算法之递推与递归的简单应用
  2. 自定义EL函数、自定义JSTL标签
  3. C# WinForm开发系列 - DataGridView
  4. 利用Python自动发送电子邮件
  5. Java设计模式之七大结构型模式
  6. 心电信号越界怎么回事_心电监护仪常见故障分析与排除
  7. 数据分析之如何制作数据埋点文档(二)
  8. CodeBlocks问题解决
  9. day05 Python 元组
  10. ASP.NET中Url重写后,打不开真正的Html页面
  11. Cannot drop the database ‘XXX’ because it is being used for replication.
  12. python的规模有多大_Python项目可以有多大?最多可以有多少行代码?
  13. 飘云阁论坛出品汇编逆向专用记事本
  14. ROS系列:八、图像消息和OpenCV图像之间进行转换-cv_bridge
  15. 天啦噜,竟然用AI来点名!你还敢逃课吗
  16. sdnu 1078
  17. linux利用源码安装madplay
  18. libc、glibc和glib的关系
  19. C++简单程序编写和操作步骤
  20. Cox 比例风险模型中HR和置信区间

热门文章

  1. 输入今天日期输出明天日期
  2. js vue 获取 (昨天、今天、明天) 时间
  3. 我为什么要表扬深信服(转)
  4. Java File分隔符和 Path分隔符
  5. 在postgre数据库中,强制删除一个数据库
  6. 使用 VS 打开 VC++6.0 创建的 MFC 项目
  7. openharmony常用网站
  8. 华东师范大学2019计算机与软件工程学院 “高可信”夏令营总结
  9. P1116 车厢重组
  10. LTE Initial Attach 的过程以及相关消息的具体解析 (一)