-1

カレンダーにイベントを挿入します。1週間に2つのイベントを実行することはできません。これNは、イベントの数です。

  1. log N週のルールを考慮して、7日間で2つのイベントを挿入しないでください。
  2. 2日(x、 )を含む場合、日と日の間のイベント( :イベント)をy返します。kO(k + log N)xy
  3. xイベント(週ルール)を挿入できない日がある場合、で次の可能なyy > xを見つけますlog N

RB-treeだと思いますが、挿入できない日がある場合は、次の可能な日を見つけるのに時間がかかりますn*logn

4

1 に答える 1

0

RB ツリーに基づくソリューションで問題ないようです。主なポイントは、ツリーに配置されるイベントのキーとして週の最初の曜日を使用することです。もちろん、イベントの実際の日も保存する必要があります。

于 2013-02-26T18:20:05.960 に答える