Advertisement
darekfive

Untitled

Mar 21st, 2025
229
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 0.70 KB | None | 0 0
  1. public static List<String> findMissingRanges(int[] nums, int lower, int upper) {
  2.         List<String> missingRanges = new ArrayList<>();
  3.         long next = lower; // use long to avoid overflow issues
  4.  
  5.         for (int num : nums) {
  6.             if (num > next) {
  7.                 missingRanges.add(formatRange(next, num - 1));
  8.             }
  9.             next = (long) num + 1; // move to next expected number
  10.         }
  11.  
  12.         if (next <= upper) {
  13.             missingRanges.add(formatRange(next, upper));
  14.         }
  15.  
  16.         return missingRanges;
  17.     }
  18.  
  19.     private static String formatRange(long start, long end) {
  20.         return start == end ? String.valueOf(start) : start + "->" + end;
  21.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement