mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-09 11:34:46 +08:00
Merge pull request #808 from Jerry-306/patch-25
新增 0056 合并区间 JavaScript 另一种解法
This commit is contained in:
@ -241,6 +241,32 @@ var merge = function (intervals) {
|
|||||||
return result
|
return result
|
||||||
};
|
};
|
||||||
```
|
```
|
||||||
|
版本二:左右区间
|
||||||
|
```javascript
|
||||||
|
/**
|
||||||
|
* @param {number[][]} intervals
|
||||||
|
* @return {number[][]}
|
||||||
|
*/
|
||||||
|
var merge = function(intervals) {
|
||||||
|
let n = intervals.length;
|
||||||
|
if ( n < 2) return intervals;
|
||||||
|
intervals.sort((a, b) => a[0]- b[0]);
|
||||||
|
let res = [],
|
||||||
|
left = intervals[0][0],
|
||||||
|
right = intervals[0][1];
|
||||||
|
for (let i = 1; i < n; i++) {
|
||||||
|
if (intervals[i][0] > right) {
|
||||||
|
res.push([left, right]);
|
||||||
|
left = intervals[i][0];
|
||||||
|
right = intervals[i][1];
|
||||||
|
} else {
|
||||||
|
right = Math.max(intervals[i][1], right);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
res.push([left, right]);
|
||||||
|
return res;
|
||||||
|
};
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user