LeetCode 228: Summary Ranges
生活随笔
收集整理的這篇文章主要介紹了
LeetCode 228: Summary Ranges
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
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"].
代碼要求對數組中的元素進行分段。
首先給出字符串格式化函數,假設begin==end, 則輸出字符串“begin”, 否則輸出“begin->end”,代碼例如以下:
string format(int begin, int end){char buffer[32];if (end == begin){sprintf(buffer, "%d", begin);}else{sprintf(buffer, "%d->%d", begin, end);}return string(buffer);}然后對數組進行分段。代碼例如以下:
vector<string> summaryRanges(vector<int>& nums) {vector<string> result;if (nums.size()<1)return result;int begin, end;begin = end = nums[0];for (int i=1; i<nums.size(); i++){if (nums[i] ==end || nums[i]==end+1){end = nums[i];} else{result.push_back(format(begin, end));begin = end = nums[i];}}result.push_back(format(begin, end));return result;}轉載于:https://www.cnblogs.com/llguanli/p/6902648.html
總結
以上是生活随笔為你收集整理的LeetCode 228: Summary Ranges的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: E201700525-hm
- 下一篇: 我想当演员?