expressão = 0
Resolução da equação
O método de Newton é o método principal de resolução. Sua definição na Wikipedia é: O método de Newton é um método de aproximação de equações em campos reais e complexos. O método usa os primeiros termos da série de Taylor da função f (x) para encontrar a raiz da equação f (x) = 0. Em suma, o método de Newton é iterar sobre x até que x converja para um pequeno intervalo
Portanto, para qualquer função unária, podemos tentar usar o método de Newton para encontrar sua solução aproximada. Quando o erro é menor que 10 ^ -9, ou quando o número de etapas de iteração excede 10 ^ 5, a iteração termina.
Ao construir o solucionador, há vários problemas importantes que precisam ser resolvidos: analisar a expressão de entrada, expressar a função, derivar a equação da função e substituindo e avaliando a função. Entre elas, a primeira prioridade é: como armazenamos (expressamos) funções?
Por que escolher esta árvore de expressão binária? Principalmente porque é uma estrutura de árvore, que é conveniente para processamento recursivo de nós, e depois usamos a ideia recursiva para derivar a função, incluindo a ideia de substituição e avaliação.
Expressões de pré-processamento: Primeiro, precisamos pré-processar a string de expressão de entrada. Porque há algumas escritas simples ou redundantes em matemática que precisam ser padronizadas aqui. Depois que a string de entrada natural é pré-processada, ela deve ser uma string de expressão infixa, que é uma forma de expressão que os humanos podem entender naturalmente. Mas para armazenar a expressão como uma árvore de expressão binária, também precisamos converter a expressão infixa em uma expressão pós-fixa
Algoritmo de campo de agendamento: O algoritmo de campo de grau é basicamente semelhante à maneira como usamos a pilha para calcular expressões na recursão de pilha Hanoi. Ele usa uma fila para expressar a expressão de sufixo de saída e usa a pilha para armazenar operadores e funções