您的位置:首页 > 其它

LeetCodeOJ_228_Summary Ranges

2015-11-10 15:23 267 查看
答题链接

题目:

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”].

Tags Array

Similar Problems (M) Missing Ranges

分析:

注意:nums为空的情况。

代码:

class Solution {
public:
vector<string> summaryRanges(vector<int>& nums) {
vector<string> strs;

int size = nums.size();
if(size == 0)
return strs;

char t[256];

int firstNum = nums[0];
int lastNum = firstNum;
int i = 1;
int j = 0;
while(i<size){
if(nums[i]==lastNum+1)
lastNum = nums[i++];
else{
if(firstNum==lastNum)
sprintf(t, "%d", firstNum);
else
sprintf(t, "%d->%d", firstNum,lastNum);
strs.push_back(t);
firstNum = lastNum = nums[i++];
}
}

if(firstNum==lastNum)
sprintf(t, "%d", firstNum);
else
sprintf(t, "%d->%d", firstNum,lastNum);
strs.push_back(t);

return strs;
}

};


总结:

参考资料:无

结果:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: