I would like to design a program to implement a string of operation, such as:

1+3/4+5*5-(454*23-34)

Then, it returns a correct answer.

And what's the exact algorithms?