Я думаю, что вы делаете это неправильно. Не беспокойтесь о маркировке вещей как многочлена и т. Д.
Просто убедитесь, что ваш перевод из любого ввода в фактическую структуру данных прост и понятен.
Такие вещи, как полином, могут быть добавлены позже или помечены позже в общей структуре, которую вы создали изначально.
Этот тип шаблона проектирования часто встречается в компиляторах / интерпретаторах как для компьютерных, так и для естественных языков. По сути, первым шагом является синтаксический анализ, где вы создаете синтаксическую структуру, например, синтаксическое дерево. Затем, есть семантический анализ, где значение присоединяется к синтаксису. Судя по описательным терминам, вы, вероятно, используете интерпретатор математических выражений, так что это будет очень близкое совпадение.
Взгляните на Kernighan и Pike для их примера dc (настольного калькулятора), книг Aho Hopcroft и Ullman по структурам данных / интерпретаторам / компиляторам языка, примерам некоторых современных простых компиляторов и т. Д. Они являются плодотворным источником шаблонов проектирования, таких как: хорошо (хотя они предшествуют популярности термина).