MCPcopy Create free account
hub / github.com/austingebauer/go-leetcode / merge0

Function merge0

merge_intervals_56/solution.go:38–53  ·  view source on GitHub ↗

First solution

(intervals [][]int)

Source from the content-addressed store, hash-verified

36
37// First solution
38func merge0(intervals [][]int) [][]int {
39 sort.Slice(intervals, func(i, j int) bool {
40 return intervals[i][0] < intervals[j][0]
41 })
42
43 merged := make([][]int, 0)
44 for i := 0; i < len(intervals); i++ {
45 if len(merged) == 0 || intervals[i][0] > merged[len(merged)-1][1] {
46 merged = append(merged, intervals[i])
47 } else if intervals[i][1] > merged[len(merged)-1][1] {
48 merged[len(merged)-1][1] = intervals[i][1]
49 }
50 }
51
52 return merged
53}

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected