約 100000 個の英数字文字列を格納するデータ構造をいくつか提案してもらえますか?各文字列には、それに関連付けられた整数 X があります。効率的にサポートする必要がある操作は次のとおりです。
starts_with(String s)
-- 文字列 s で始まり、他の文字列より大きい X 値を持つ 10 個の文字列を返します。- `like(String x,int start,int end)` -- 「like」であるすべての文字列のサブリスト (start,end-1) を返します。
その他の操作:
- `set_X(s,c)` --- String の X を c に設定します。
- `get_x(s)` --- s の X 値を返します。
- `insert (s,x)` --- 新しいデータ エントリを作成します
- `selete(s,x)` --- 既存のエントリを削除します
DataEntry 構造 (すでに推測されているように)
{
string s;
int x;
}