Я хочу сделать следующее:
Определить карту между строкой и любым объектом (может быть список, целое - что угодно).
Ключи к карте может быть следующим (значения, опять же, не имеет значения):
"ААА/123" ==> 1
"ААА/" ==> 2
«ВВВ/ "==> 3
"CCC/*" ==> 4
"CCC/123" ==> 5
Теперь фокус в том, я хочу, чтобы найти правильные значения, приведенные следующие строки:
" AAA/123 "следует указать 1.
" AAA/111 "должно указывать 2.
" CCC/111 "должно предоставить 4.
"CCC/123" должны дать 5.
"BBB/AAA/123" должен дать 3.карта операция наложения
Любая идея, как я могу это сделать с C++ и, возможно, STL/увеличить?
я удалил свой ответ, потому что я не думал достаточно :) Я думаю, что trie идеально подходит для этой утилиты. просто двигайтесь по дорожкам trie, пока не будет найдено больше совпадающих элементов.посмотрите здесь: http://en.wikipedia.org/wiki/Trie. –