代碼地址: http://runjs.cn/code/r06uftvphtml
首先得弄明白什麼是 逆波蘭表達式 參見 : http://www.cnblogs.com/chenying99/p/3675876.htmlcode
大體總結一下htm
咱們日常的計算方法, 運算符放在兩個數字之間 叫作 中綴表達式blog
如 2 + 3 * (5 - 1)get
運算符放在兩個數字前, 叫作 前綴表達式, 也叫 波蘭式方法
如 + 2 * 3 - 5 1 總結
從左往右直到碰見兩個數字就用 兩個數字前的 運算符 計算co
運算符放在兩個數字後, 叫作 後綴表達式, 也叫 逆波蘭式數字
如 2 3 5 1 - * +運算符
從右往左直到碰見兩個數字就用 兩個數字後的 運算符 計算
根據逆波蘭式的計算方式咱們能夠得出一些簡單的表達式驗證方法
前兩位必須是數字
運算符的個數只能比數字個數少一個
最後一位必須是運算符
連續運算符的長度只能比前邊的數字少一個 (如 :3 3 - - 3 3 -, 是不對的)