最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(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 運算的評論 (共 條)

分享到微博請遵守國家法律
左贡县| 迁西县| 乌兰察布市| 新干县| 龙泉市| 宁德市| 开封市| 古蔺县| 武川县| 冷水江市| 江川县| 阜城县| 武安市| 页游| 桂平市| 岳普湖县| 兴安盟| 庄河市| 和政县| 临高县| 大安市| 昌吉市| 临武县| 萝北县| 孙吴县| 和硕县| 临猗县| 大关县| 上高县| 兴海县| 霞浦县| 龙口市| 合作市| 安塞县| 沙坪坝区| 永仁县| 那坡县| 中阳县| 榕江县| 宁远县| 湖口县|