stdmap — эффективный поиск данных в нескольких иерархических структурах данных в переполнении стека

Привет всем, у меня есть проблема поиска данных внутри большой карты, которую я создал. Я создаю FSM с моей структурой. У меня есть несколько conditions, которые должны быть добавлены к определенным Transitionс (на основе следующих условий). condition должны быть добавлены к Transition между двумя состояниями s1 & s2, если state s1 находится в определенном set s1Set а также state s2 находится в set s2Set,

Так как у меня есть несколько условий, каждое из которых имеет пару наборов, я создал эту карту для возможности проверки.

std::map<std::set<int>, std::pair<std::set<StateArch*>, std::set<StateArch*> > > mapBypassConditions;

Множество целочисленных значений — это мое состояние, а пара наборов — это то место, где я ищу S1 и S2.

Тем не менее, я чувствую, что это очень неэффективно, потому что для каждого перехода в моем FSM мне нужно пройти всю карту и найти S1 и S2 и проверить, нужно ли мне добавить условие к нему.

У вас, ребята, есть идеи получше? Возможно, лучшая организация карты?

постскриптум Я использую C ++ 98, так как фреймворк немного устарел и еще не работает с более новыми версиями

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]