Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- struct Interval {
- var start : Int
- var end : Int
- }
- func mergeInterval (_ input1 : Interval, _ input2 : Interval) -> [Interval]{
- let arr = [input1, input2].sorted { $0.start < $1.start }
- let int1 = arr[0]
- let int2 = arr[1]
- if int1.end < int2.start { return [int1, int2] } // cant mergge
- return [Interval(start: int1.start , end: int2.end)]
- }
- func interSection (_ input1 : Interval, _ input2 : Interval) -> Interval?{
- let arr = [input1, input2].sorted { $0.start < $1.start }
- let int1 = arr[0]
- let int2 = arr[1]
- if int1.end < int2.start { return nil } // no intersection
- return Interval(start: int2.start, end: int1.end)
- }
- let int1 = Interval(start: 2, end: 4)
- let int2 = Interval(start: 3, end: 6)
- print(interSection( int2, int1))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement