Largest Positive Integer That Exists With Its Negative

Largest Positive Integer That Exists With Its Negative

Given an integer array nums that does not contain any zeros, find the largest positive integer k such that -k also exists in the array.

Return the positive integer k. If there is no such integer, return -1.

LeetCode Problem - 2441

import java.util.HashSet;

class Solution {
    // Method to find the maximum value of k such that both k and -k exist in the array
    public int findMaxK(int[] nums) {
        // Initialize the result variable to store the maximum value of k
        int result = -1;
        // Create a HashSet to store unique elements from the array
        HashSet<Integer> hs = new HashSet<>();
        // Add all elements of the array to the HashSet
        for(int e : nums) {
            hs.add(e);
        }

        // Iterate through the array to find the maximum value of k
        for(int k : nums) {
            // Check if k is positive and its negation (-k) exists in the HashSet
            if(k > 0 && hs.contains(-k)) {
                // Update the result with the maximum of the current k and the previous result
                result = Math.max(result, k);
            }
        }

        // Return the maximum value of k found
        return result;
    }
}