給定乙個無重複元素的有序整數陣列 nums 。
返回 恰好覆蓋陣列中所有數字 的 最小有序 區間範圍列表。也就是說,nums 的每個元素都恰好被某個區間範圍所覆蓋,並且不存在屬於某個範圍但不屬於 nums 的數字 x 。
列表中的每個區間範圍 [a,b] 應該按如下格式輸出:
「a->b」 ,如果 a != b
「a」 ,如果 a == b
示例 1:
輸入:nums = [0,1,2,4,5,7]
輸出:[「0->2」,「4->5」,「7」]
解釋:區間範圍是:
[0,2] --> 「0->2」
[4,5] --> 「4->5」
[7,7] --> 「7」
示例 2:
輸入:nums = [0,2,3,4,6,8,9]
輸出:[「0」,「2->4」,「6」,「8->9」]
解釋:區間範圍是:
[0,0] --> 「0」
[2,4] --> 「2->4」
[6,6] --> 「6」
[8,9] --> 「8->9」
示例 3:
輸入:nums =
輸出:示例 4:
輸入:nums = [-1]
輸出:["-1"]
示例 5:
輸入:nums = [0]
輸出:[「0」]
遍歷,確定左右區間即可。但這這中間遇到了溢位的問題。就是把nums[i] == nums[i-1]+1 用nums[i+1] == nums[i]+1是出現的
class
solution
right = i-1;
str +
=to_string
(nums[left]);
if(left!=right)
ans.
push_back
(str)
; str.
clear()
;}return ans;}}
;
leetcode 228 彙總區間
給定乙個無重複元素的有序整數陣列 nums 返回 恰好覆蓋陣列中所有數字 的 最小有序 區間範圍列表。也就是說,nums 的每個元素都恰好被某個區間範圍所覆蓋,並且不存在屬於某個範圍但不屬於 nums 的數字 x 列表中的每個區間範圍 a,b 應該按如下格式輸出 a b 如果 a b a 如果 a ...
228 彙總區間 力扣(LeetCode)
給定乙個無重複元素的有序整數陣列,返回陣列區間範圍的彙總。示例 1 輸入 0,1,2,4,5,7 輸出 0 2 4 5 7 解釋 0,1,2 可組成乙個連續的區間 4,5 可組成乙個連續的區間。示例 2 輸入 0,2,3,4,6,8,9 輸出 0 2 4 6 8 9 解釋 2,3,4 可組成乙個連續...
228 彙總區間(雙指標劃窗)
給定乙個無重複元素的有序整數陣列,返回陣列區間範圍的彙總。示例 1 輸入 0,1,2,4,5,7 輸出 0 2 4 5 7 解釋 0,1,2 可組成乙個連續的區間 4,5 可組成乙個連續的區間。示例 2 輸入 0,2,3,4,6,8,9 輸出 0 2 4 6 8 9 解釋 2,3,4 可組成乙個連續...