Learn
Practice
Interview
Resources
Newsletter
F
Toggle theme
0
F
0
Toggle menu
Animations
← Back to All Animations
Employee Free Time
Bookmark
Flatten + Sort
Min-Heap
Line Sweep
Input
Standard
Overlapping
No free time
Multiple gaps
schedule
=
[[[1,2],[5,6]],[[1,3]],[[4,10]]]
emp 1
emp 2
emp 3
[1,2]
[5,6]
[1,3]
[4,10]
free
1
2
3
4
5
6
7
8
9
10
all intervals
emp 1
emp 2
emp 3
[1,2]
[5,6]
[1,3]
[4,10]
free
1
2
3
4
5
6
7
8
9
10
all intervals
emp 1
emp 2
emp 3
[1,2]
[5,6]
[1,3]
[4,10]
free
1
2
3
4
5
6
7
8
9
10
all intervals
[1,2]
[5,6]
[1,3]
[4,10]
emp 1
emp 2
emp 3
[1,2]
[5,6]
[1,3]
[4,10]
free
1
2
3
4
5
6
7
8
9
10
sorted by start
[1,2]
[5,6]
[1,3]
[4,10]
emp 1
emp 2
emp 3
[1,2]
[5,6]
[1,3]
[4,10]
free
prevEnd
1
2
3
4
5
6
7
8
9
10
sorted by start
[1,2]
[5,6]
[1,3]
[4,10]
start = 1 > prevEnd = 2 ?
emp 1
emp 2
emp 3
[1,2]
[5,6]
[1,3]
[4,10]
free
prevEnd
1
2
3
4
5
6
7
8
9
10
sorted by start
[1,2]
[5,6]
[1,3]
[4,10]
prevEnd = max(2, 3) = 3
emp 1
emp 2
emp 3
[1,2]
[5,6]
[1,3]
[4,10]
free
prevEnd
1
2
3
4
5
6
7
8
9
10
sorted by start
[1,2]
[5,6]
[1,3]
[4,10]
start = 4 > prevEnd = 3 ?
emp 1
emp 2
emp 3
[1,2]
[5,6]
[1,3]
[4,10]
free
[3,4]
prevEnd
1
2
3
4
5
6
7
8
9
10
sorted by start
[1,2]
[5,6]
[1,3]
[4,10]
free time += [3,4]
emp 1
emp 2
emp 3
[1,2]
[5,6]
[1,3]
[4,10]
free
[3,4]
prevEnd
1
2
3
4
5
6
7
8
9
10
sorted by start
[1,2]
[5,6]
[1,3]
[4,10]
start = 5 > prevEnd = 10 ?
emp 1
emp 2
emp 3
[1,2]
[5,6]
[1,3]
[4,10]
free
[3,4]
prevEnd
1
2
3
4
5
6
7
8
9
10
sorted by start
[1,2]
[5,6]
[1,3]
[4,10]
prevEnd = max(10, 6) = 10
emp 1
emp 2
emp 3
[1,2]
[5,6]
[1,3]
[4,10]
free
[3,4]
1
2
3
4
5
6
7
8
9
10
sorted by start
[1,2]
[5,6]
[1,3]
[4,10]
free time: [3,4]
algo
master
.
io
Step:
Find the common free time by flattening every schedule into one list
0 / 11
Input
Standard
Overlapping
No free time
Multiple gaps
schedule
=
[[[1,2],[5,6]],[[1,3]],[[4,10]]]
0 / 11
algo
master
.
io
Step:
Find the common free time by flattening every schedule into one list