Допустим, я читаю строку из файла:
{Parent{{ChildA}{ChildB}}}
Более сложный пример:
{Parent{{ChildA{ChildC}{ChildD}}{ChildB{ChildE}{ChildF}}}}
Какая грамматика используется для построения дерева.
Любое имя в скобках {}
является узлом, и если в этой скобке есть другие узлы (скобки), эти узлы являются дочерними.
Я могу разобрать первый конкретный пример, используя счетчик, но только чтобы найти текстовые имена узлов. Как я могу разобрать это, чтобы определить, какие узлы являются дочерними по отношению друг к другу? Кажется, я не могу осмыслить код, который я бы использовал. У меня есть ощущение, что я бы использовал рекурсию.
Мы будем благодарны за любую помощь или совет.
C ++ является предпочтительным.
Большое спасибо.