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

昆山高端网站设计建设合肥营销型网站建设开发

昆山高端网站设计建设,合肥营销型网站建设开发,聊城市网站建设,如何用易语言做网站题目: 给定一个长度为 N 的整数数列,输出每个数左边第一个比它小的数,如果不存在则输出 −1。要求:时间复杂度为O(N) 思路: 从左往右将序列中的数与栈顶元素比较,如果小于栈顶元素,则弹栈并继…

题目:

给定一个长度为 N 的整数数列,输出每个数左边第一个比它小的数,如果不存在则输出 −1。要求:时间复杂度为O(N)

思路:

从左往右将序列中的数与栈顶元素比较,如果小于栈顶元素,则弹栈并继续比较,直到栈顶元素大于等于当前的数或栈空。如果当前数小于栈顶元素那么栈顶元素就是当前数左边第一个更小的数(因为栈具有先进先出的性质);如果栈空,那么左边不存在更小的数。接着将当前数入栈,继续遍历序列……

代码:

#include<iostream>
#include<stack>
#include<vector>
using namespace std;vector<int> decStack(vector<int> v1)
{stack<int> s;vector<int> v2;for (auto it = v1.begin(); it != v1.end(); it++){while (!s.empty() && *it < s.top())//小于则出栈继续寻找s.pop();if (s.empty())//如果栈空则不存在v2.push_back(-1);else//如果大于或等于,栈顶元素就是左边第一个比当前元素小的数v2.push_back(s.top());s.push(*it);}return v2;
}int main()
{vector<int> v1 = { 2,1,3,5,4 };vector<int> v2 = decStack(v1);for (auto it = v2.begin(); it != v2.end(); it++){cout << *it << " ";}return 0;
}

原理:单调栈

单调栈即从栈顶至栈底单调递增或者单调递减的栈。常有如下应用场景:

(1)寻找序列数左侧第一个更小值(单调递减栈):方法如上

(2)寻找序列数左侧第一个更大值(单调递增栈):方法与上面类似,一直寻找大于序列数的栈元素,小于的出栈;或者直到栈空。然后将当前序列数入栈,继续遍历……

时间复杂度:

每个序列数至多入栈一次、出栈一次,时间复杂度为O(n)

参考:单调栈详解及其应用-CSDN博客


文章转载自:

http://pyGg8mMI.dqfsz.cn
http://rIKl7zVQ.dqfsz.cn
http://Os3rVnp2.dqfsz.cn
http://gjiyt8Fz.dqfsz.cn
http://WmCxW9cD.dqfsz.cn
http://xwl7A4zP.dqfsz.cn
http://do0vlj4g.dqfsz.cn
http://7kBxcpBc.dqfsz.cn
http://W2hTzepy.dqfsz.cn
http://WtaT0LC0.dqfsz.cn
http://TrIz8WhL.dqfsz.cn
http://9nEHYDat.dqfsz.cn
http://jxZiAKmb.dqfsz.cn
http://86C6M2qb.dqfsz.cn
http://8arfsKTz.dqfsz.cn
http://1Vumt8Gr.dqfsz.cn
http://mtFNiX8x.dqfsz.cn
http://2dCdRWa9.dqfsz.cn
http://BNLaQ3Yd.dqfsz.cn
http://qmJPqIoP.dqfsz.cn
http://Gpheq1f9.dqfsz.cn
http://AKEHH0k2.dqfsz.cn
http://2naW9ehz.dqfsz.cn
http://HHiyJ5OQ.dqfsz.cn
http://E8cuclwf.dqfsz.cn
http://EsD2Qq96.dqfsz.cn
http://L4DDzH6g.dqfsz.cn
http://ynqBQG9Y.dqfsz.cn
http://JNuvZxb6.dqfsz.cn
http://kqg6GEfE.dqfsz.cn
http://www.dtcms.com/wzjs/751583.html

相关文章:

  • 如何更改网站域名局域网的电脑怎么做网站服务器
  • 网站的制作方案博客网站首页设计
  • 网站备案 主办单位深圳市龙华区大浪街道
  • 怎么做阿里巴巴官网站搜外网 seo教程
  • 网站后台编辑器石家庄 外贸网站建设
  • flash网站带后台做网站比较好的数字
  • 江苏省建设厅网站挂证存疑名单腾讯游戏推广代理加盟
  • 网站后台如何上传附件wordpress做社交网站吗
  • 微信小程序 购物网站开发广州市安全教育平台app下载
  • 网站创建网站家具设计网
  • 门户网站的基本功能自己的电脑做服务区 网站
  • 太原站建设有多长时间桂林生活网分类信息网站
  • 推广普通话宣传海报谷歌seo网站排名优化
  • 主要对布局进行网站推广优化技巧
  • 家装设计网站大全wordpress新建字段
  • 济南网站万词优化手机wap网站建设解决方案
  • 海外精品网站建设简述传统营销与网络营销的整合
  • 长春百度网站快速排名wordpress分销商城
  • 免费网站制作案例wordpress 330
  • 月嫂网站建设方案wordpress nginx安装目录
  • 有什么正网站做兼职的哈尔滨网站建设优化公司
  • 做电商网站多少钱网站ip地址向谁购买
  • 网站实施就是网站建设网站开发规划方案
  • 有没有做装修中介的网站做电脑网站用什么软件好用
  • 电子商务网站建设的主要内容美团网站建设总体需求与目标
  • 禅城区建设局网站seo的网站
  • 女人做绿叶网站相亲拉人宁波网站制作设计
  • 做网站自己买服务器wordpress yosat
  • 个人网站制作的选题意义公司部门部长是什么级别
  • 触动网站建设固原网站制作