File tree Expand file tree Collapse file tree 1 file changed +32
-0
lines changed
Expand file tree Collapse file tree 1 file changed +32
-0
lines changed Original file line number Diff line number Diff line change 1+ # -*- coding: utf-8 -*-
2+
3+ class Solution :
4+ """
5+ Insert a new interval into a sorted non-overlapping interval list.
6+ @param intevals: Sorted non-overlapping interval list
7+ @param newInterval: The new interval.
8+ @return: A new sorted non-overlapping interval list with the new interval.
9+ """
10+ def insert (self , intervals , newInterval ):
11+ # write your code here
12+ ret = []
13+ i = 0
14+ while i < len (intervals ):
15+ if intervals [i ].start > newInterval .start :
16+ break
17+ i += 1
18+ if i > 0 :
19+ ret [0 :i ] = intervals [0 :i ]
20+ intervals [i - 1 ] = newInterval
21+ start = i - 1
22+ else :
23+ ret .append (newInterval )
24+ start = 0
25+ for i in xrange (start , len (intervals )):
26+ if (intervals [i ].start >= ret [- 1 ].start ) and \
27+ (intervals [i ].start <= ret [- 1 ].end ):
28+ if intervals [i ].end > ret [- 1 ].end :
29+ ret [- 1 ].end = intervals [i ].end
30+ else :
31+ ret .append (intervals [i ])
32+ return ret
You can’t perform that action at this time.
0 commit comments