Mam takie ciekawe zagadnienie:
Mam listę okresów zdefiniowanych jako:
List<Period> PeriodList;
class Period
{
public DateTime DateStart { get; set; }
public DateTime DateStop { get; set; }
}
Chciałbym tą listę zmienić tak aby okresy łączące się ze sobą oraz pokrywające się zamienić na jeden wpis, np: 2023-01-01 - 2023-01-10 oraz 2023-01-05 - 2023-01-20 zamienić na jedną pozycję: 2023-01-01 - 2023-01-20.
Czy jest na to jakiś algorytm pozwalający oprogramować taką operację?
Próbowałem to sam zrobić ale ilość możliwych przypadków mnie przerosła.
Może ktoś spotkał się z takim zagadnieniem?
Pozdrawiam