Leetcode 224基本計算器

2021-10-06 17:20:19 字數 826 閱讀 2976

**邏輯先寫第三步再寫第二步,思考時要按照表示式順序先看數字再看右括號正常考慮,時間複雜度o(n)

class

solution

intcalculate

(string s)

else

//遇到數字

nums.

push

(n);

//處理多位數等價寫法

//while (j < s.size() && isdigit(s[j])) j ++ ;

j - i).c_str()));

i = j -1;

//恢復原來i的下標位置

if(op.

size()

&&(op.

top()==

'-'|| op.

top()==

'+')

)calc

(nums, op);}

}return nums.

top();

}};

class

solution

elseif(

isdigit

(s[i]))

num = num *10+

(s[i]

-'0');

else

if(s[i]

=='+'

|| s[i]

=='-'

)else

if(s[i]

==')')}

return res + sign * num;}}

;

leetcode 224 基本計算器

題目 基本計算器 實現乙個基本的計算器來計算乙個簡單的字串表示式的值。字串表示式可以包含左括號 右括號 加號 減號 非負整數和空格 示例1 輸入 1 1 輸出 2 示例2 輸入 2 1 2 輸出 3 示例3 輸入 1 4 5 2 3 6 8 輸出 23 說明 c include include cl...

leetcode 224 基本計算器

實現乙個基本的計算器來計算乙個簡單的字串表示式的值。字串表示式可以包含左括號 右括號 加號 減號 非負整數和空格 示例 1 輸入 1 1 輸出 2 示例 2 輸入 2 1 2 輸出 3 示例 3 輸入 1 4 5 2 3 6 8 輸出 23 採用雙棧法,設立乙個資料棧和乙個操作符棧,在遍歷字串的過程...

leetcode 224 基本計算器

實現乙個基本的計算器來計算乙個簡單的字串表示式的值。字串表示式可以包含左括號 右括號 加號 減號 非負整數和空格 示例 1 輸入 1 1 輸出 2 示例 2 輸入 2 1 2 輸出 3 示例 3 輸入 1 4 5 2 3 6 8 輸出 23 這道題中帶了括號,可以用字尾表示式實現。詳情參見 鏈結1鏈...