Структура поиска для обработки будущих событий (на основе времени)

Я ищу эффективную структуру данных, котораяПозвольте мне отслеживать события ... то есть, у меня будет приложение, где в любой момент выполнения, возможно, что событие будет инициировано для будущей точки выполнения ... что-то вроде:

t = 20: через 420 секунд происходит At = 25: через 13 секунд возникает Bt = 27: через 735 секунд происходит C...

так что я'Я хотел бы иметь структуру данных, в которую я могу поместить любое событие в любое время в будущем и где я могу получить и (тем самым) удалить все соответствующие события ... также, плюс был бы, если бы я мог удалить событие из структуры данных (потому что оно было отменено) ... не слишком важно, поскольку я могу просто пометить его как отмененное ...

Моей первой мыслью было, может быть, создать какое-то дерево, но я думаю, что часть удаления из-за событий требует большой перебалансировки ...

я рассматриваю просто наличие int хэша, отображение временных меток на ноль или стеки событий, которые должны произойти в этот момент времени ... я думаю, в сценариях, с большим количеством событий (возможно, несколько раз в секунду - это то, что я намерены работать с), это на самом деле нетакая плохая идея в конце концов ...

так что мне не терпится услышать ваш вклад ... :)

редактировать:

чтобы быть более конкретным: я думаю, что n здесь около 100K-1M, и я думаю, что у меня может быть около 1-100 событий в секунду ...это не имеет особого значения ... это только для иллюстрации того, что будущее событие может быть "поставлен в очередь» в любое время ...

Спасибо

back2dos

Ответы на вопрос(4)

Ваш ответ на вопрос