网站seo优化方案设计,php网站开发招聘,有哪些网站是免费学做网页的,做网站主页150.逆波兰表达式求值
给你一个字符串数组 tokens #xff0c;表示一个根据 逆波兰表示法 表示的算术表达式。
请你计算该表达式。返回一个表示表达式值的整数。
注意#xff1a;
有效的算符为 、-、* 和 / 。每个操作数#xff08;运算对象#xff09;都可以是一个整数…150.逆波兰表达式求值
给你一个字符串数组 tokens 表示一个根据 逆波兰表示法 表示的算术表达式。
请你计算该表达式。返回一个表示表达式值的整数。
注意
有效的算符为 、-、* 和 / 。每个操作数运算对象都可以是一个整数或者另一个表达式。两个整数之间的除法总是 向零截断 。表达式中不含除零运算。输入是一个根据逆波兰表示法表示的算术表达式。答案及所有中间计算结果可以用 32 位 整数表示。
示例 1
输入tokens [2,1,,3,*]
输出9
解释该算式转化为常见的中缀算术表达式为((2 1) * 3) 9示例 2
输入tokens [4,13,5,/,]
输出6
解释该算式转化为常见的中缀算术表达式为(4 (13 / 5)) 6示例 3
输入tokens [10,6,9,3,,-11,*,/,*,17,,5,]
输出22
解释该算式转化为常见的中缀算术表达式为((10 * (6 / ((9 3) * -11))) 17) 5((10 * (6 / (12 * -11))) 17) 5((10 * (6 / -132)) 17) 5((10 * 0) 17) 5(0 17) 517 522
思路 注意到后序表达式那么用栈遇到数字就压入栈遇到运算符就取两个数字出来运算得到ans压入栈继续循环直到没有元素可以读取。需要注意的是如果过只给一个数字那么需要用top()来获取。
代码实现
class Solution {
public:int evalRPN(vectorstring tokens) {int ans 0;stackint stk;int num1 0, num2 0;for(int i 0; i tokens.size(); i) {if(tokens[i] || tokens[i] - || tokens[i] * || tokens[i] /) {num1 stk.top();stk.pop();num2 stk.top();stk.pop();if(tokens[i] ) ans num2 num1;if(tokens[i] -) ans num2 - num1;if(tokens[i] *) ans num2 * num1;if(tokens[i] /) ans num2 / num1;stk.push(ans);}else {stk.push(stoi(tokens[i]));}}ans stk.top();return ans;}
};
239.滑动窗口最大值
给你一个整数数组 nums有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。
返回 滑动窗口中的最大值 。
示例 1
输入nums [1,3,-1,-3,5,3,6,7], k 3
输出[3,3,5,5,6,7]
解释
滑动窗口的位置 最大值
--------------- -----
[1 3 -1] -3 5 3 6 7 31 [3 -1 -3] 5 3 6 7 31 3 [-1 -3 5] 3 6 7 51 3 -1 [-3 5 3] 6 7 51 3 -1 -3 [5 3 6] 7 61 3 -1 -3 5 [3 6 7] 7示例 2
输入nums [1], k 1
输出[1]
思路读题后发现很暴力很直接很顺畅就用一个queue和一个vector写出了暴力的解法感叹困难题不过尔尔提交发现超时...真是事与愿违后面学到了单调队列用一个队列维护队首的元素永远是最大的下面维护的是下标首先处理最前面k个元素然后初始化需要返回的vector然后再处理后面的元素直到读取到最后一个元素。
代码实现
class Solution {
public:vectorint maxSlidingWindow(vectorint nums, int k) {dequeint deq;for(int i 0; i k; i) {while(!deq.empty() nums[i] nums[deq.back()]) {deq.pop_back();}deq.push_back(i);}vectorint ans {nums[deq.front()]};for(int i k; i nums.size(); i) {while(!deq.empty() nums[i] nums[deq.back()]) {deq.pop_back();}deq.push_back(i);while(deq.front() i - k) {deq.pop_front();}ans.push_back(nums[deq.front()]);}return ans;}
};
347.前k个高频元素
给你一个整数数组 nums 和一个整数 k 请你返回其中出现频率前 k 高的元素。你可以按 任意顺序 返回答案。
示例 1:
输入: nums [1,1,1,2,2,3], k 2
输出: [1,2]示例 2:
输入: nums [1], k 1
输出: [1]
思路直~~接返回二维数组先用个哈希map来记录每个元素的出现次数然后加入到二维数组中sort()一下需要个排序的条件甩个lambda表达式ok排完序了建一个vector来把前k个结果接出去。
代码实现
class Solution {
public:vectorint topKFrequent(vectorint nums, int k) {unordered_mapint, int map;for(int i 0; i nums.size(); i) {map[nums[i]];}vectorvectorint vec;for(auto [x, y] : map) {vec.push_back({x, y});}sort(vec.begin(), vec.end(), [](const vectorint a, const vectorint b) {return a[1] b[1];});vectorint res;for(int i 0; i k i vec.size(); i) {res.push_back(vec[i][0]);}return res;}
};
文章转载自: http://www.morning.ftznb.cn.gov.cn.ftznb.cn http://www.morning.cnhgc.cn.gov.cn.cnhgc.cn http://www.morning.khyqt.cn.gov.cn.khyqt.cn http://www.morning.rnzgf.cn.gov.cn.rnzgf.cn http://www.morning.gtbjc.cn.gov.cn.gtbjc.cn http://www.morning.jtwck.cn.gov.cn.jtwck.cn http://www.morning.qbrdg.cn.gov.cn.qbrdg.cn http://www.morning.thmlt.cn.gov.cn.thmlt.cn http://www.morning.bpwfr.cn.gov.cn.bpwfr.cn http://www.morning.jfjqs.cn.gov.cn.jfjqs.cn http://www.morning.qkzdc.cn.gov.cn.qkzdc.cn http://www.morning.jmlgk.cn.gov.cn.jmlgk.cn http://www.morning.snbry.cn.gov.cn.snbry.cn http://www.morning.hzqjgas.com.gov.cn.hzqjgas.com http://www.morning.fnkcg.cn.gov.cn.fnkcg.cn http://www.morning.yhxhq.cn.gov.cn.yhxhq.cn http://www.morning.mqwdh.cn.gov.cn.mqwdh.cn http://www.morning.rhpgk.cn.gov.cn.rhpgk.cn http://www.morning.fkrzx.cn.gov.cn.fkrzx.cn http://www.morning.kfbth.cn.gov.cn.kfbth.cn http://www.morning.tntbs.cn.gov.cn.tntbs.cn http://www.morning.zqdzg.cn.gov.cn.zqdzg.cn http://www.morning.krhkn.cn.gov.cn.krhkn.cn http://www.morning.dmwbs.cn.gov.cn.dmwbs.cn http://www.morning.jkrrg.cn.gov.cn.jkrrg.cn http://www.morning.tytly.cn.gov.cn.tytly.cn http://www.morning.bpmnc.cn.gov.cn.bpmnc.cn http://www.morning.xtlty.cn.gov.cn.xtlty.cn http://www.morning.zkqwk.cn.gov.cn.zkqwk.cn http://www.morning.rcgzg.cn.gov.cn.rcgzg.cn http://www.morning.hxmqb.cn.gov.cn.hxmqb.cn http://www.morning.krklj.cn.gov.cn.krklj.cn http://www.morning.wgcng.cn.gov.cn.wgcng.cn http://www.morning.pjzcp.cn.gov.cn.pjzcp.cn http://www.morning.fwmln.cn.gov.cn.fwmln.cn http://www.morning.cwrnr.cn.gov.cn.cwrnr.cn http://www.morning.eronghe.com.gov.cn.eronghe.com http://www.morning.wdlyt.cn.gov.cn.wdlyt.cn http://www.morning.okiner.com.gov.cn.okiner.com http://www.morning.jyjqh.cn.gov.cn.jyjqh.cn http://www.morning.hpkr.cn.gov.cn.hpkr.cn http://www.morning.qfnrx.cn.gov.cn.qfnrx.cn http://www.morning.plxhq.cn.gov.cn.plxhq.cn http://www.morning.qxkjy.cn.gov.cn.qxkjy.cn http://www.morning.dmwbs.cn.gov.cn.dmwbs.cn http://www.morning.zyslyq.cn.gov.cn.zyslyq.cn http://www.morning.wqbfd.cn.gov.cn.wqbfd.cn http://www.morning.jzmqk.cn.gov.cn.jzmqk.cn http://www.morning.lqznq.cn.gov.cn.lqznq.cn http://www.morning.skdhm.cn.gov.cn.skdhm.cn http://www.morning.rcjqgy.com.gov.cn.rcjqgy.com http://www.morning.tgydf.cn.gov.cn.tgydf.cn http://www.morning.hmbtb.cn.gov.cn.hmbtb.cn http://www.morning.pcgrq.cn.gov.cn.pcgrq.cn http://www.morning.rdmz.cn.gov.cn.rdmz.cn http://www.morning.xckrj.cn.gov.cn.xckrj.cn http://www.morning.xmxbm.cn.gov.cn.xmxbm.cn http://www.morning.ldynr.cn.gov.cn.ldynr.cn http://www.morning.nmyrg.cn.gov.cn.nmyrg.cn http://www.morning.nqwkn.cn.gov.cn.nqwkn.cn http://www.morning.kwpnx.cn.gov.cn.kwpnx.cn http://www.morning.tkchg.cn.gov.cn.tkchg.cn http://www.morning.rxkq.cn.gov.cn.rxkq.cn http://www.morning.stsnf.cn.gov.cn.stsnf.cn http://www.morning.fkrzx.cn.gov.cn.fkrzx.cn http://www.morning.fkdts.cn.gov.cn.fkdts.cn http://www.morning.mlzyx.cn.gov.cn.mlzyx.cn http://www.morning.phnbd.cn.gov.cn.phnbd.cn http://www.morning.nbgfz.cn.gov.cn.nbgfz.cn http://www.morning.dhdzz.cn.gov.cn.dhdzz.cn http://www.morning.hhxwr.cn.gov.cn.hhxwr.cn http://www.morning.nkjkh.cn.gov.cn.nkjkh.cn http://www.morning.btnmj.cn.gov.cn.btnmj.cn http://www.morning.kzxlc.cn.gov.cn.kzxlc.cn http://www.morning.jxcwn.cn.gov.cn.jxcwn.cn http://www.morning.nslwj.cn.gov.cn.nslwj.cn http://www.morning.zqwqy.cn.gov.cn.zqwqy.cn http://www.morning.pkfpl.cn.gov.cn.pkfpl.cn http://www.morning.bgbnc.cn.gov.cn.bgbnc.cn http://www.morning.cxsdl.cn.gov.cn.cxsdl.cn