『牛客|每日一题』逆波兰表达式

简介: 基础算法无论在研究生面试还是求职面试都是十分重要的一环,这里推荐一款算法面试神器:牛客网-面试神器;算法题只有多刷勤刷才能保持思路与手感,大家赶紧行动起来吧(温馨提示:常见的面试问答题库也很nice哦 https://www.nowcoder.com/link/pc_csdncpt_ll_sf

如果文章有帮到你的话记得点赞👍+收藏💗支持一下哦



1.每日一题

网络异常,图片无法展示
|

2.解题思路

2.1思路分析

计算逆波兰表达式:遇到数字就压栈,遇到运算符就弹出栈顶两个数进行计算,然后把计算结果压入栈中,直到栈中只剩下最后一个数,就是整个逆波兰表达式的计算结果。

  • step 1:引入辅助栈stk,遍历字符串,每次遇到数字就入栈,所以栈可以定义为Integer类型
  • step 2:当遇到"+","-","*","/"字符串的时候,则弹出栈顶两个数,进行相应的运算(先弹出来的是被操作数,后弹出来的是操作数;如减法时,是先弹出来的是被减数,后弹出来的是减数)
  • step 3:将计算结果(Integer类型)存入栈中
  • step 4:循环匹配字符串,直到所有字符串处理完成
  • step 5:栈中剩下的最后一个元素就是计算结果

2.2核心代码

importjava.util.*;

 

 

publicclassSolution {

   /**

    * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可

    * @param tokens string字符串一维数组

    * @return int整型

    */

   publicintevalRPN (String[] tokens) {

       // write code here

       Stack<Integer>stk=newStack<>();

       for(inti=0;i<tokens.length;++i){

           Strings=tokens[i];

           if(s.equals("+")||s.equals("-")||s.equals("*")||s.equals("/")){

               stk.push(cal(stk.pop(),s,stk.pop()));

           }else{

               stk.push(Integer.parseInt(s));

           }

       }

       returnstk.pop();

   }

   publicIntegercal(Integerb,Strings,Integera){

       switch(s){

           case"+":returna+b;

           case"-":returna-b;

           case"*":returna*b;

           case"/":returna/b;

       }

       return-1;

   }

}

网络异常,图片无法展示
|

📚订阅专栏:『牛客刷题集锦』

🍁每日推荐:基础算法无论在研究生面试还是求职面试都是十分重要的一环,这里推荐一款算法面试神器:牛客网-面试神器;算法题只有多刷勤刷才能保持思路与手感,大家赶紧行动起来吧(温馨提示:常见的面试问答题库也很nice哦)

如果文章有帮到你的话记得点赞👍+收藏💗支持一下哦


相关文章
|
存储
【例题】逆波兰表达式求值(图解+代码)
【例题】逆波兰表达式求值(图解+代码)
466 0
|
存储 C++ 容器
【C++初阶】STL详解(五)List的介绍与使用
【C++初阶】STL详解(五)List的介绍与使用
174 0
|
算法 C++ 容器
【C++】STL——list的使用
【C++】STL——list的使用
385 0
【C++】STL——list的使用
|
7天前
|
云安全 人工智能 自然语言处理
|
11天前
|
人工智能 Java API
Java 正式进入 Agentic AI 时代:Spring AI Alibaba 1.1 发布背后的技术演进
Spring AI Alibaba 1.1 正式发布,提供极简方式构建企业级AI智能体。基于ReactAgent核心,支持多智能体协作、上下文工程与生产级管控,助力开发者快速打造可靠、可扩展的智能应用。
985 35
|
5天前
|
机器学习/深度学习 人工智能 自然语言处理
Z-Image:冲击体验上限的下一代图像生成模型
通义实验室推出全新文生图模型Z-Image,以6B参数实现“快、稳、轻、准”突破。Turbo版本仅需8步亚秒级生成,支持16GB显存设备,中英双语理解与文字渲染尤为出色,真实感和美学表现媲美国际顶尖模型,被誉为“最值得关注的开源生图模型之一”。
649 4
|
7天前
|
机器学习/深度学习 人工智能 数据可视化
1秒生图!6B参数如何“以小博大”生成超真实图像?
Z-Image是6B参数开源图像生成模型,仅需16GB显存即可生成媲美百亿级模型的超真实图像,支持中英双语文本渲染与智能编辑,登顶Hugging Face趋势榜,首日下载破50万。
520 25
|
14天前
|
数据采集 人工智能 自然语言处理
Meta SAM3开源:让图像分割,听懂你的话
Meta发布并开源SAM 3,首个支持文本或视觉提示的统一图像视频分割模型,可精准分割“红色条纹伞”等开放词汇概念,覆盖400万独特概念,性能达人类水平75%–80%,推动视觉分割新突破。
852 59
Meta SAM3开源:让图像分割,听懂你的话