g2201_2300.s2239_find_closest_number_to_zero.Solution Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of leetcode-in-java21 Show documentation
Show all versions of leetcode-in-java21 Show documentation
Java-based LeetCode algorithm problem solutions, regularly updated
package g2201_2300.s2239_find_closest_number_to_zero;
// #Easy #Array #2022_06_10_Time_2_ms_(84.21%)_Space_50.9_MB_(41.29%)
/**
* 2239 - Find Closest Number to Zero\.
*
* Easy
*
* Given an integer array `nums` of size `n`, return _the number with the value **closest** to_ `0` _in_ `nums`. If there are multiple answers, return _the number with the **largest** value_.
*
* **Example 1:**
*
* **Input:** nums = [-4,-2,1,4,8]
*
* **Output:** 1
*
* **Explanation:**
*
* The distance from -4 to 0 is |-4| = 4.
*
* The distance from -2 to 0 is |-2| = 2.
*
* The distance from 1 to 0 is |1| = 1. The distance from 4 to 0 is |4| = 4.
*
* The distance from 8 to 0 is |8| = 8.
*
* Thus, the closest number to 0 in the array is 1.
*
* **Example 2:**
*
* **Input:** nums = [2,-1,1]
*
* **Output:** 1
*
* **Explanation:** 1 and -1 are both the closest numbers to 0, so 1 being larger is returned.
*
* **Constraints:**
*
* * `1 <= n <= 1000`
* * -105 <= nums[i] <= 105
**/
public class Solution {
public int findClosestNumber(int[] nums) {
int mini = Integer.MAX_VALUE;
int closestNum = 0;
for (int n : nums) {
if (mini > Math.abs(n)) {
mini = Math.abs(n);
closestNum = n;
} else if (mini == Math.abs(n) && closestNum < n) {
closestNum = n;
}
}
return closestNum;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy