当前位置: 首页 > news >正文

瓯北网站建设苏州网站关键词优化推广

瓯北网站建设,苏州网站关键词优化推广,医馆网站建设方案,旅游网站建设的方向前言 这几个题目都是栈和队列的高频面试题目,主要是考察思路和coding能力,在前面几道题目的基础上进行延伸的。同时还有优先级队列和双端队列的用法 题目链接 150. 逆波兰表达式求值 - 力扣(LeetCode) 239. 滑动窗口最大值 - 力…

前言

 这几个题目都是栈和队列的高频面试题目,主要是考察思路和coding能力,在前面几道题目的基础上进行延伸的。同时还有优先级队列和双端队列的用法

题目链接

150. 逆波兰表达式求值 - 力扣(LeetCode) 

239. 滑动窗口最大值 - 力扣(LeetCode) 

一、逆波兰表达式求值

 说点白话:我们好奇计算器是怎么处理运算的不?我们会在编译原理这门课程中学到,逆波兰表达式,俗称后缀表达式,具体来说就是,计算机并不知道计算逻辑的优先级(括号的优先级),但是他能找到一个括号最先匹配的,这样我们就会花了很大的时间去遍历查询括号,还有运算符的优先级问题,我们都需要考虑,有什么方法可以跳过这些呢?就是后缀表达式,我们让符号去匹配他的计算数值,同时利用栈来对符号的优先级进行排序,这样两个问题都能得到解决,足以可见逆波兰表达式(后缀表达式的腻害之处)。

tips:注意除法运算和减法的顺序第一次写错了,哈哈哈 

    int evalRPN(vector<string>& tokens) {stack<long long> st;for(int i=0;i<tokens.size();i++){if(tokens[i]=="+"||tokens[i]=="-"||tokens[i]=="*"||tokens[i]=="/"){long long nums1=st.top();st.pop();long long nums2=st.top();st.pop();if(tokens[i]=="+")st.push(nums1+nums2);if(tokens[i]=="-")st.push(nums2-nums1);if(tokens[i]=="*")st.push(nums1*nums2);if(tokens[i]=="/")st.push(nums2/nums1);}else{st.push(stoll(tokens[i]));}}return st.top();}
};

二、滑动窗口求最大值

 思路:借助deque双端队列去实现这个题目比较简单一点,同时保持队列是递减的就行。

vector<int> maxSlidingWindow(vector<int>& nums, int k) {if(nums.size() == 0 || k == 0) return {};deque<int> deque;vector<int> res(nums.size() - k + 1);for(int j = 0, i = 1 - k; j < nums.size(); i++, j++) {// 删除 deque 中对应的 nums[i-1]if(i > 0 && deque.front() == nums[i - 1])deque.pop_front();// 保持 deque 递减while(!deque.empty() && deque.back() < nums[j])deque.pop_back();deque.push_back(nums[j]);if(i >= 0)res[i] = deque.front();}return res;}

三、前K个高频元素的值

 使用优先级队列,哈希表统计数据,压入数据,然后遍历出数据。

 

unordered_map<int, int> hmap;priority_queue<pair<int,int>> pq;vector<int> res;for (int i : nums)hmap[i]++;   //使用哈希表统计个数for (auto iter : hmap)pq.emplace(iter.second,iter.first);   //压入优先级队列for (int i = 0; i < k; i++)   //遍历k次找到前k个最大次数对应的值{ res.push_back(pq.top().second);pq.pop();}return res;
http://www.shuangfujiaoyu.com/news/61210.html

相关文章:

  • 服装网站建设多少钱精准营销的成功案例
  • 旅游网站栏目建设玉林网站seo
  • 上海网站建设网页制作培训郑州seo价格
  • 山西品牌设计公司郑州seo实战培训
  • 厦门海沧网站建设淘宝的关键词排名怎么查
  • 环县网站怎么做代写软文公司
  • 学校管理网站源码市场营销策划书范文5篇精选
  • 做外贸soho 需要有网站吗宁波seo行者seo09
  • 网站的首页怎么做的天津seo推广
  • 新开的公司建立网站有哪些要做的百度搜索引擎网址格式
  • 烟台哪里做网站今日小说排行榜百度搜索风云榜
  • 北京网站建设unitewww中国国家培训网官网查询
  • wordpress 登录 404网站seo站长工具
  • 上海最专业的网站建设公司排名seo系统优化
  • 域名停靠网站下载大全怎么制作个人网站
  • 浙江建设信息网青岛seo公司
  • 洛阳高端网站建设百度竞价项目
  • 中国建设招标工程网站广州营销网站建设靠谱
  • 设计一个企业网站大概多少钱西安做seo的公司
  • 中山精品网站建设新闻seo博客网站
  • 晋城网站seo搜索引擎竞价排名
  • 网站后台做1个多少钱谷歌浏览器下载安装2022最新版
  • 企业展示型网站 建站系统谷歌搜索引擎免费入口 台湾
  • 网站开发中网页之间的连接形式南京百度推广优化
  • 服务器色情网站专用北京网站建设运营
  • 做优化网站是什么意思上海最新发布最新
  • 网站关键词多少个字数 站长网注册域名后如何建立网站
  • 漳州建网站深圳知名网络优化公司
  • nodejs 做视频网站重庆seo全面优化
  • 建设银行兰州分行网站百度网站首页