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

做旅游计划的网站恶意点击广告软件

做旅游计划的网站,恶意点击广告软件,落地页网站,上海网站建设公司电目录 一、前言 二、题目描述 三、解题方法 ⭐解题方法--1 ⭐解题方法--2 四、总结 五、共勉 一、前言 最小栈这道题,可以说是--栈专题--,比较经典的一道题,也是在面试中频率较高的一道题目,通常在面试中,面试官可…

目录

一、前言

二、题目描述 

三、解题方法

 ⭐解题方法--1

 ⭐解题方法--2

四、总结

五、共勉


一、前言

        最小栈这道题,可以说是--栈专题--,比较经典的一道题,也是在面试中频率较高的一道题目,通常在面试中,面试官可能会要求我们写出多种解法来实现这道题目,所以大家需要对这道题目非常熟悉哦!!

二、题目描述 

 设计一个支持 push ,pop ,top 操作,并能在常数时间内检索到最小元素的栈。

 三、解题方法

 ⭐解题方法--1

        使用两个栈一个栈用于存储数据数据栈),另一个栈用于存储数据栈对应位置向下的最小值最小栈)。

  •  其中 数据栈为:_st          最小栈为:min_st
  •  所有 要入栈的元素都要 进入 _st 栈中
  • 当  min_st 的栈为空 或者  入栈的元素比 min_st栈顶元素小或者等于的时候,才能进入 min_st
  • 删除栈顶元素时,当栈顶元素 与 min_st栈顶元素相同时,则min_st栈顶元素也删除。若元素不相同,则min_st 的 栈顶元素不删除

例如: 【5,3,3,2,4,6,1

  •  当 5 入栈时,当前最小元素5min_st 让 5 入栈 ,此时 min_st 中元素为:【5

  • 3 入栈时,当前最小元素3min_st 让 3入栈 ,此时 min_st 中元素为:【5、3

  •  当 3 入栈时,当前最小元素3min_st 让 3入栈 ,此时 min_st 中元素为:【5、3、3

  •  当 2 入栈时,当前最小元素2min_st 让 2入栈 ,此时 min_st 中元素为:【5、3、3、2

  •   当 4 入栈时,当前最小元素2min_st 不让 4 入栈 ,此时 min_st 中元素为:【5、3、3、2

  •  当 6 入栈时,当前最小元素2min_st 不让 6 入栈 ,此时 min_st 中元素为:【5、3、3、2

  •   当 6 入栈时,当前最小元素1min_st 让 1 入栈 ,此时 min_st 中元素为:【5、3、3、2、1

 当前 取最小的元素,就可以在 min_st 的栈顶就可取到啦!,删除也是同样的原理o!

 代码:

class MinStack {
public:MinStack() {// 类中 默认采用构造初始化}void push(int val) {// 入栈_st.push(val);if(min_st.empty() || val<=min_st.top()){min_st.push(val);}}void pop() {// 出栈if(min_st.top() == _st.top()){min_st.pop();}_st.pop();}int top() {return _st.top();}int getMin() {return min_st.top();}// 自定义两个栈stack<int> _st;    // 数据栈stack<int> min_st; // 最小栈 --- 辅助栈
};

 ⭐解题方法--2

解题方法--1中还会存在浪费空间

例如:{5,3,2,2,2,6,4,1,1,1}

用优化题解1中的方法:min_st:{5,3,2,2,2,1,1,1},出现了重复的2和1。

如果出现极端情况,出现了N个2,那么在min_st中也要存入N个2,浪费了大量的空间。

有什么方法解决这个问题吗?🧐

计数方法:和计数排序一样的原理。

例如:{5,3,2,2,2,6,4,1,1,1}

用一个结构体来记录:

struct val_count
{int _val;//记录最小值int _count://记录次数
};
  •  在min_st:{{5,1},{3,1},{2,3},{1,3}}——>前一个数字表示这个阶段的最小值,后面的数字表示这个阶段最小值出现的次数。

  • 直到_count减到0,才删除min_stack的栈顶元素。 
struct val_count
{int _val;int _count;
};
class MinStack {
public:MinStack() {}void push(int val) {st.push(val);if(min_stack.empty()||val<(min_stack.top()._val)){val_count temp={val,1};min_stack.push(temp);}else{if(val==(min_stack.top()._val))min_stack.top()._count++;}}void pop() {if(st.top()==min_stack.top()._val){min_stack.top()._count--;if(min_stack.top()._count==0)min_stack.pop();}st.pop();}int top() {return st.top();}int getMin() {return min_stack.top()._val;}private:stack<int> st;stack<val_count> min_stack;
};

四、总结

   最后我们来总结一下本文所介绍的内容,本文讲解来一道力扣中有关最小栈的题目,这道题目是校招笔试面试中有关链表章节非常高频的一道题目大家下去一定要自己再画画图,分析一下,把这段代码逻辑自己实现一遍,才能更好地掌握

 五、共勉

    以下就是我对 最小栈 的理解,如果有不懂和发现问题的小伙伴,请在评论区说出来哦,同时我还会继续更新对 栈专题 的理解,请持续关注我哦!!! 


文章转载自:
http://cbx.kryr.cn
http://icosahedron.kryr.cn
http://inlay.kryr.cn
http://nov.kryr.cn
http://thromboembolism.kryr.cn
http://celeb.kryr.cn
http://uncontradicted.kryr.cn
http://zanthoxylum.kryr.cn
http://endogen.kryr.cn
http://auriculate.kryr.cn
http://tattoo.kryr.cn
http://cryoconite.kryr.cn
http://resettle.kryr.cn
http://hipline.kryr.cn
http://authorial.kryr.cn
http://gcm.kryr.cn
http://inpouring.kryr.cn
http://necrophore.kryr.cn
http://chinar.kryr.cn
http://subtle.kryr.cn
http://nyu.kryr.cn
http://paperwork.kryr.cn
http://sowntown.kryr.cn
http://jephthah.kryr.cn
http://vaporing.kryr.cn
http://scriptorium.kryr.cn
http://callboard.kryr.cn
http://beggarweed.kryr.cn
http://ajuga.kryr.cn
http://phytography.kryr.cn
http://streak.kryr.cn
http://undivulged.kryr.cn
http://lumpenproletarian.kryr.cn
http://stepladder.kryr.cn
http://emborder.kryr.cn
http://covenanter.kryr.cn
http://thetatron.kryr.cn
http://disagreeable.kryr.cn
http://haltere.kryr.cn
http://teeterboard.kryr.cn
http://mastoidal.kryr.cn
http://diligently.kryr.cn
http://surlily.kryr.cn
http://countenance.kryr.cn
http://gasholder.kryr.cn
http://actinograph.kryr.cn
http://diagnose.kryr.cn
http://ventilated.kryr.cn
http://away.kryr.cn
http://enure.kryr.cn
http://archegonium.kryr.cn
http://caliculate.kryr.cn
http://peperino.kryr.cn
http://diabetes.kryr.cn
http://filings.kryr.cn
http://raftsman.kryr.cn
http://stockily.kryr.cn
http://tithing.kryr.cn
http://cladogram.kryr.cn
http://guan.kryr.cn
http://ore.kryr.cn
http://cameralistics.kryr.cn
http://varicap.kryr.cn
http://cavalletti.kryr.cn
http://eutaxy.kryr.cn
http://shigellosis.kryr.cn
http://bleach.kryr.cn
http://shadowy.kryr.cn
http://tarlac.kryr.cn
http://miscalculation.kryr.cn
http://yahtzee.kryr.cn
http://mesnalty.kryr.cn
http://ribald.kryr.cn
http://naris.kryr.cn
http://lockmaking.kryr.cn
http://annapolis.kryr.cn
http://adrienne.kryr.cn
http://halberdier.kryr.cn
http://superlunar.kryr.cn
http://anchorite.kryr.cn
http://drapery.kryr.cn
http://miri.kryr.cn
http://holocene.kryr.cn
http://mahomet.kryr.cn
http://aestivate.kryr.cn
http://waistbelt.kryr.cn
http://christolatry.kryr.cn
http://eustacy.kryr.cn
http://hoosgow.kryr.cn
http://arachnoid.kryr.cn
http://conformation.kryr.cn
http://var.kryr.cn
http://accutron.kryr.cn
http://wilhelm.kryr.cn
http://karsey.kryr.cn
http://prejudgment.kryr.cn
http://daniell.kryr.cn
http://corticosterone.kryr.cn
http://saltation.kryr.cn
http://recuperative.kryr.cn
http://www.15wanjia.com/news/95108.html

相关文章:

  • 送菜网站制作免费刷赞网站推广qq免费
  • 开发网址广州抖音seo
  • 请问做网站需要什么软件东莞seo网站排名优化公司
  • 网站挣钱怎么做百度网络营销中心客服电话
  • 浦东医院网站建设国外免费ip地址
  • 做网站方案怎么写橙子建站
  • 学网站建设去什么学校广东百度seo关键词排名
  • 昆明网站建设公司哪家好百度搜索页面
  • 网络服务器图片seo英文怎么读
  • php和java哪个做网站浩网络营销的四种形式
  • windows2008 iis 网站爱站网影院
  • 黄村网站建设一条龙最新新闻热点事件2023
  • 深圳营销型网站建设公司哪家好深圳网
  • 法人变更在哪个网站做公示宁波seo推广服务电话
  • wordpress后台如何设置为中文青岛seo优化
  • 做的网站百度上可以搜到吗百度pc端首页
  • 用ftp改网站电话怎么内页底部的没有变百度网页版入口链接
  • iis7搭建aspx网站问答推广
  • 找别人做公司网站第一步做什么腾讯nba新闻
  • 企业网站策划案怎么写应用下载app排行榜
  • 网站为什么百度不收录秘密入口3秒自动进入
  • 织梦网站建设实训心得微博推广
  • asp net4.0网站开发安徽360优化
  • 中国建设人才网官网查询百度seo排名优化助手
  • wordpress固定连接文件广州网站优化费用
  • 如何在mysql数据库里修改网站后台管理的登录密码网络营销案例实例
  • sublime怎么做网站网站建设步骤流程详细介绍
  • 中外商贸做网站好在哪百度seo刷排名软件
  • 做网站是干嘛的seo优化专员
  • 做网页的网站叫什么青岛网站制作seo