我在制作递归算法时遇到一些问题,能够做一些基本的操作,包括乘法,除法,减法加法和幂。除非我开始加入括号,否则我会把一切都搞定。我知道一个事实,他们优先,但我无法弄清楚如何这样做。
代码背后的基本思想是创建一个二叉树,其中每个节点都是一个操作符的开头,其最高优先级位于树的底部,最高优先级位于树的底部。我的方法是首先检测是否有任何右括号,检查右括号右边是否有任何运算符,如果有一个有效的运算符,树的左边部分将是右括号和右边的所有内容。树的一部分将是操作员之后的一切。我面临的问题是何时考虑左括号......
这是我的代码:
<html data-ng-app="dashboard">
<head>
<title>Demo AngularJS</title>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
</head>
<body data-ng-controller="dashboardController">
<div class="sse" data-ng-init="initSSE()">
<h3>Demo With HTML5 Server-Sent Events in PHP</h3>
<div data-ng-bind="statusSSE"></div>
percentage_completion: {{testSSE.percentage_completion}}
<br />
<progress min="0" max="100" value="{{testSSE.percentage_completion}}" />
</div>
</body>
</html>
此时,我们将不胜感激任何提示或建议。
修改
我不是在寻找内置的Java库来做到这一点。我只想弄清楚我错过了什么以及我哪里出错了。