Qt / C ++でカレンダーアプリを作成していて、構造の作成方法を決定しています。
私がこれまでに行ったこと:予定の並べ替えられたベクトルを作成します(開始日の昇順で並べ替えられます)。
52の場所(毎週1つ)と各スポットにその週の予定へのポインターのベクトルを含むstd :: mapを追加すると、パフォーマンスが向上するかどうか疑問に思っています。たとえば1月の予定を取得することは、一定の時間で行われます(最初の4週間のすべてのポインタを取得するようなものです)。短所:ユーザーが予定を編集/削除/作成するたびに、このテーブルを再構築する必要があります。
ベクトルを使用して、1月に開始する最初の予定を検索し、1月に最後の予定を検索することもできます。これは線形時間(N)で発生します。
ユーザーがすべての月をすばやくクリックする場合、最初から最後までベクトルを繰り返すよりも、クリックする各月の予定をすばやく埋めることができるマップテーブルを用意する方が効率的だと思います。
多分私は私のベクトルから毎月のイテレータを保つことができますか?
何かアドバイス?-これを間違ったスタックに置いた場合も失礼します。