题目描述
给定一个随机的整数(可能存在正整数和负整数)数组 nums,请你在该数组中找出两个数,其和的绝对值(|nums[x]+nums[y]|)为最小值,并返回这个两个数(按从小到大返回)以及绝对值。
每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。
输入描述
一个通过空格分割的有序整数序列字符串,最多1000个整数,且整数数值范围是 [-65535, 65535]。
输出描述
两数之和绝对值最小值
用例
| 输入 | -1 -3 7 5 11 15 |
| 输出 | -3 5 2 |
| 说明 | 因为 |nums[0] + nums[2]| = |-3 + 5| = 2 最小,所以返回 -3 5 2。 |
给定一个包含正负整数的有序数组,找到两个数,使得它们的和的绝对值最小。如果数组全是非负数,最小和是前两个数;全是负数,最小和是倒数两个数;否则,可能是非负数部分的前两个数、负数部分的最后两个数或正负数相邻的组合。采用二分查找确定第一个非负数的位置。
订阅专栏 解锁全文
429

被折叠的 条评论
为什么被折叠?



