您的位置 首页 golang

Go语言实现LeetCode算法:简单计算器

1 题目描述

实现一个可以对简单 字符串 表达式进行计算的计算器。该字符串表达式由+,-,(,)及非负整数组成。

例子1:

输入:”1 + 1″

输出:2

例子2:

输入:” 2-1 + 2 ”

输出:3

例子3:

输入:”(1+(4+5+2)-3)+(6+8)”

输出:23

注:

1)假定给定的表达式总是有效的;

2)勿使用内置函数直接求得结果。

题目出处:

2 解决思路

1)去除字符串表达式中的所有空格;

2)遍历字符数组;

2.1)若当前字符为[0-9]的数值,一直向后找,直至取出整个整数,根据前一个字符是+或-,将当前结果加上或减去该整数;

2.2)若当前字符是'(‘,一直向后找,找到跟该左括号匹配的’)’,将之间的表达式同样采用2步骤计算结果。根据前一个字符是’+’或’-‘,将当前结果加上或减去该子表达式结果。

3)至字符数组最后一个字符结束。

3 golang实现代码

原文链接:

本文作者:磊磊落落的博客,原创授权发布

文章来源:智云一二三科技

文章标题:Go语言实现LeetCode算法:简单计算器

文章地址:https://www.zhihuclub.com/86249.shtml

关于作者: 智云科技

热门文章

发表评论

您的电子邮箱地址不会被公开。

网站地图