public void Union(Intervals other) { foreach (var otherInterval in other.AllIntervals) { Union(otherInterval); } }
public Intervals Clone() { Intervals intervalsClone = new Intervals(); foreach (var interval in AllIntervals) { intervalsClone.AllIntervals.Add(interval); } return(intervalsClone); }
public void Intersect(Intervals other) { Intervals newInterval = new Intervals(); foreach (var otherInterval in other.AllIntervals) { var intervalClone = Clone(); intervalClone.Intersect(otherInterval); newInterval.Union(intervalClone); } AllIntervals = newInterval.AllIntervals; }