Структура данных для хранения повторяющихся событий?
Я ищу шаблон структуры данных для хранения повторяющихся событий, но все, что я придумал, привело бы к большому количеству обработки особого случая, или пользовательский ввод и извлечение данных были бы слишком сложными. (У меня появляется отчетливое ощущение, что я недостаточно хорошо понимаю проблемную область, чтобы сделать это.)
Как я могу хранить повторяющиеся события в стиле Outlook?
Каждый день в 8 утраКаждый первый вторник в месяцеКаждый 1 декабря в течение трех летКаждые два часа в течение недели...