228. Summary Ranges

来源:互联网 发布:桂树焉知泰山之高的焉 编辑:程序博客网 时间:2024/04/30 11:50

Given a sorted integer array without duplicates, return the summary of its ranges.

For example, given [0,1,2,4,5,7], return [“0->2”,”4->5”,”7”].

题目要求找出连续的区域,遍历一次数组就可以得到结果

代码:

class Solution {public:    vector<string> summaryRanges(vector<int>& nums) {        vector<string>res;        if(nums.empty()) return res;        int n=nums.size();        nums.push_back(INT_MAX);        int l=0;        for(int i=1;i<=n;i++)        {            if(nums[i]-nums[i-1]!=1)             {                string tmp;                tmp=(l==i-1)?tmp=to_string(nums[l]):(to_string(nums[l])+"->"+to_string(nums[i-1]));                res.push_back(tmp);                l=i;            }        }        return res;    }};
0 0
原创粉丝点击