Я работаю над проблемой, которая выглядит следующим образом -
Реализация функции, которая оценивает выражение, состоящее из
следующие операнды: '(', ')', '+', '-', '*', '/'. Каждое число в
Выражение может быть большим (таким, как представлено строкой
1000 цифр). Операнд '/' (т.е. деление) возвращает целое число
фактор.
Контрольные примеры идут как -
(((10000000000000000000000001231234448563465435434723854278423 /
1111111111234623874627) * 2342384523 + 123124 - 34534534) * (
1231263123242346 + 223423234346 * 234236536))
и может быть даже дольше.
Я не хочу использовать внешние библиотеки, которые являются оценщиками / синтаксическими анализаторами выражений, такими как JEP и тому подобное.
Я размышлял по аналогии с BigInteger, а потом узнал, что BigInteger не оценивает эспрессии, как это делает Integers. Я также знаю, что синтаксический анализ - это вариант, при котором мне нужно было бы имитировать поведение BODMAS. Я хотел бы знать, есть ли какой-либо другой способ сделать это, и если нет, хотел бы получить несколько указателей о том, как я мог бы реализовать это .
Я не ищу готовое решение, я просто ищу направления, чтобы прийти к решению самостоятельно.