zoukankan      html  css  js  c++  java
  • [LeetCode] Missing Ranges

    Missing Ranges 

    Given a sorted integer array where the range of elements are [lowerupper] inclusive, return its missing ranges.

    For example, given [0, 1, 3, 50, 75]lower = 0 and upper = 99, return ["2", "4->49", "51->74", "76->99"].

     1 class Solution {
     2 public:
     3     vector<string> findMissingRanges(vector<int>& nums, int lower, int upper) {
     4         vector<string> res;
     5         for (int i = 0; i < nums.size() && nums[i] <= upper; ++i) {
     6             while (i < nums.size() && nums[i] == lower) {
     7                 ++i;
     8                 ++lower;
     9             }
    10             if (i >= nums.size()) break;
    11             if (nums[i] == lower + 1) {
    12                 res.push_back(to_string(lower));
    13             } else {
    14                 res.push_back(to_string(lower) + "->" + to_string(nums[i]-1));
    15             }
    16             lower = nums[i] + 1;
    17         }
    18         if (lower == upper) {
    19             res.push_back(to_string(lower));
    20         } else if (lower < upper) {
    21             res.push_back(to_string(lower) + "->" + to_string(upper));
    22         }
    23         return res;
    24     }
    25 };
  • 相关阅读:
    15-数组concat()方法和push比较
    06-使用云储存上传工具
    05-云函数/云数据库的增删改查
    错题1
    c++链表
    8817
    8816
    1177
    1355
    c++期末考
  • 原文地址:https://www.cnblogs.com/easonliu/p/4788582.html
Copyright © 2011-2022 走看看