В основном требуется, чтобы вы создали функцию сравнения, которая определяет, является ли дата более ранней или более поздней (или равной) по отношению к другой. Вы бы использовали эту функцию, чтобы определить, где разместить новый узел и / или если он уже существует в дереве. Остальные будут работать как обычное двоичное дерево, содержащее, скажем, целые числа.
Например, вы можете указать более ранние даты как левые и более поздние даты как правые.