国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

華為OD機試-- 仿 LISP 運算

2023-10-14 20:36 作者:天生完美  | 我要投稿

題目

LISP 語言唯一的語法就是括號要配對。

形如 (OP P1 P2 …),括號內(nèi)元素由單個空格分割。

其中第一個元素 OP 為操作符,后續(xù)元素均為其參數(shù),參數(shù)個數(shù)取決于操作符類型。

注意:

參數(shù) P1, P2 也有可能是另外一個嵌套的 (OP P1 P2 …) ,

當前 OP 類型為 add / sub / mul / div(全小寫),分別代表整數(shù)的加減乘除法,

簡單起見,所有 OP 參數(shù)個數(shù)均為 2 。

舉例:

輸入:(mul 3 -7)

輸出:-21

輸入:(add 1 2)

輸出:3

輸入:(sub (mul 2 4) (div 9 3))

輸出:5

輸入:(div 1 0)

輸出:error

題目涉及數(shù)字均為整數(shù),可能為負;

不考慮 32 位溢出翻轉(zhuǎn),計算過程中也不會發(fā)生 32 位溢出翻轉(zhuǎn),

除零錯誤時,輸出 “error”,

除法遇除不盡,向下取整,即 3/2 = 1


思路

1:可以參考 逆波蘭表達式 的解法。

2:核心還是數(shù)據(jù)結(jié)構(gòu):棧的使用方法。

  • 遇到數(shù)字,入棧

  • 遇到符號,彈出兩個數(shù),然后計算(棧底的元素在前,棧頂?shù)脑卦诤竺妫?,將計算的結(jié)果入棧

Java 實現(xiàn):https://renjie.blog.csdn.net/article/details/127972933

Python實現(xiàn):https://renjie.blog.csdn.net/article/details/131024286

C++ 實現(xiàn):https://renjie.blog.csdn.net/article/details/127322836

JavaScript實現(xiàn):https://renjie.blog.csdn.net/article/details/131024296

C實現(xiàn):https://renjie.blog.csdn.net/article/details/132006528


華為OD機試-- 仿 LISP 運算的評論 (共 條)

分享到微博請遵守國家法律
伽师县| 绥阳县| 隆德县| 哈密市| 盐边县| 卓资县| 邮箱| 分宜县| 长岛县| 获嘉县| 荃湾区| 青州市| 长阳| 常州市| 河曲县| 石城县| 西吉县| 北宁市| 焦作市| 华亭县| 隆尧县| 新沂市| 西城区| 固阳县| 涟水县| 济南市| 汉寿县| 贺州市| 丁青县| 宕昌县| 兴海县| 城固县| 宝鸡市| 甘洛县| 大邑县| 景洪市| 花垣县| 桑植县| 阳东县| 潍坊市| 南乐县|