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

html网站模版邯郸网站建设网站开发

html网站模版,邯郸网站建设网站开发,做网站有哪些按钮,品牌设计包括哪些1、leecode232 用栈实现队列 使用栈模拟队列的行为#xff0c;仅使用一个栈是不行的#xff0c;所以需要两个栈#xff0c;一个是输入栈#xff0c;一个是输出栈。 #includeiostream #includevector #includestring #includestack #incl…1、leecode232 用栈实现队列 使用栈模拟队列的行为仅使用一个栈是不行的所以需要两个栈一个是输入栈一个是输出栈。 #includeiostream #includevector #includestring #includestack #includequeue using namespace std;class MyQueue {private:stackint stack_in;stackint stack_out;public:void push(int value) {stack_in.push(value);}int pop() {if (stack_out.empty()) {while (!stack_in.empty()) {stack_out.push(stack_in.top());stack_in.pop();}}int result stack_out.top();stack_out.pop();return result;}int top() {if (stack_out.empty()) {while (!stack_in.empty()) {stack_out.push(stack_in.top());stack_in.pop();}}int result stack_out.top();return result;}bool empty() {return stack_in.empty() stack_out.empty();} };void main() {MyQueue queue;queue.push(1);queue.push(2);queue.push(3);cout the first value: queue.pop() endl;cout the next value: queue.pop() endl;cout the next value: queue.pop() endl;cout hello world endl; }2、用队列实现栈。 leetcode225 队列的规则是先进先出把一个队列中的数据导入另一个队列数据的顺序并没有变。所以用栈实现队列和用队列实现栈的思路是不一样的取决于这两个数据结构的性质。如果用两个对列实现栈那么两个队列就没有输入队列和输出队列的关系另一个队列完全是用来备份的。 #includeiostream #includevector #includestring #includestack #includequeue using namespace std;class MyStack {private:queueint queue_fir;queueint queue_sec;public:void push(int val) {queue_fir.push(val);}int pop() {int size queue_fir.size();size--;while (size--) {queue_sec.push(queue_fir.front());queue_fir.pop();}int result queue_fir.front();queue_fir.pop();queue_fir queue_sec;while (!queue_sec.empty()) {queue_sec.pop();}return result;}int top() {return queue_fir.back();}bool empty() {return queue_fir.empty();} };void main() {MyStack stack;stack.push(1);stack.push(2);stack.push(3);cout stack.pop() endl;cout stack.pop() endl;cout stack.pop() endl;cout hello world endl; }3、匹配括号 leetcode20 这里有三种不匹配的情况 1、第一种情况字符串中左方向的括号多余了所以不匹配。 第一种情况已经遍历了字符串但是栈不为空说明有相应的左括号但没有右括号所以返回错误。 2、第二种情况括号没有多余但是括号的类型不匹配。 在遍历字符串的过程中发现栈中没有要匹配的字符返回错误。 3、第三种情况字符串中右方向的括号多余了所以不匹配。 在遍历字符串的过程中栈已经为空没有匹配的字符了说明右括号没有找到对应的左括号返回错误。 那么什么时候说明左括号和右括号全部匹配了呢如果遍历字符串之后栈是空的则说明全都匹配了。 #includeiostream #includevector #includestring #includestack #includequeue using namespace std;class Solution {private:stackint st;public:bool IsValid(string s) {for (int i 0; i s.size(); i) {if (s[i] () {st.push());}else if (s[i] {) {st.push(});}else if (s[i] [) {st.push(]);}else if (st.empty() || st.top() ! s[i]) {return false;}else {st.pop();}}return st.empty();} };void main() {string s (){}[]{[]};Solution slo;slo.IsValid(s);cout hello world endl; }4、滑动窗口最大值 leetcode239 一个大小为k的滑动窗口从前向后在数组nums上移动返回滑动窗口每移动一次时窗口中的最大值。 1、设计单调对列设计的时候pop和push操作保持如下规则 pop()如果窗口移除的元素value等于单调队列的出口元素那么队列弹出元素否则不进行任何操作。 push()如果push的元素value大于入口元素的数值那么就将队列入口的元素弹出直到push元素的数值小于或等于队列入口元素的数值。 基于以上规则每次窗口移动的时候只要调用que.front()就可以返回当前窗口的最大值。 #includeiostream #includevector #includestring #includestack #includequeue #includedeque using namespace std;//单调队列从大到小 class MyQueue {private:dequeint que;//使用deque实现单调队列public://每次弹出元素时比较当前要弹出元素的数值是否等于队列出口元素的数值如果相等则弹出。//弹出元素之前需要判断队列当前是否为空void pop(int value) {if (!que.empty() value que.front()) {que.pop_front();}}//如果要push的数组大于入口元素的数值那么就将队列入口元素弹出知道push的数值小于或等于对列入口元素的数值。//这样就保持了队列中的数值是从大到小的单调递减了。void push(int value) {while (!que.empty() value que.back()) {que.pop_back();}que.push_back(value);}int front() {return que.front();} };void main() {cout hello world endl; }这样就用deque实现了一个单调队列接下来解决求滑动窗口最大值的问题就简单了。 #includeiostream #includevector #includestring #includestack #includequeue #includedeque using namespace std;class Slotuion {private://单调队列从大到小class MyQueue {private:dequeint que;//使用deque实现单调队列public://每次弹出元素时比较当前要弹出元素的数值是否等于队列出口元素的数值如果相等则弹出。//弹出元素之前需要判断队列当前是否为空void pop(int value) {if (!que.empty() value que.front()) {que.pop_front();}}//如果要push的数组大于入口元素的数值那么就将队列入口元素弹出知道push的数值小于或等于对列入口元素的数值。//这样就保持了队列中的数值是从大到小的单调递减了。void push(int value) {while (!que.empty() value que.back()) {que.pop_back();}que.push_back(value);}int front() {return que.front();}};private:MyQueue que;public:vectorint MaxSlidingWindow(vectorint input,int k) {vectorint result;for (int i 0; i k; i) {que.push(input[i]);}result.push_back(que.front());for (int i k; i input.size(); i) {que.push(input[i]);que.pop(input[i - k]);result.push_back(que.front());}return result;} };void main() {vectorint input { 2,4,-2,-4,3,1,5 };int k 4;Slotuion slo;slo.MaxSlidingWindow(input, k);cout hello world endl; }
http://www.ho-use.cn/article/10820293.html

相关文章:

  • 网页制作与网站建设设计报告淄博外贸网站制作
  • 公司网页网站建设ppt模板下载国家建筑网站
  • 如何将网站提交给百度定制小程序开发哪家公司好
  • 网站怎样快速排名个人备案 做网站
  • 公司网站建设费用估计怎么制作自己的小程序
  • 餐饮 公司 网站建设网站一直百度上搜不到是怎么回事
  • 学校网站的建设目标是什么意思南昌广告制作
  • 龙华哪有做网站设计没有服务器怎么做网站
  • 淄博乐达信息技术网站花生壳可以做网站吗
  • 做购物网站赚钱吗页面设计包括什么
  • 网站导航面包屑哪里可以接做ppt的网站
  • 技术支持东莞网站建设小程序模板免费网站
  • 营销网站模版官方网站下载zoom
  • 做网站一般几个人完成宁波网页设计的技术要求
  • 阿里云服务器做网站安全吗云南建设网站首页
  • 网站定位有哪些杭州市在建工程项目
  • 邢台做网站优化价格网站的优点有哪些
  • 网站seo哪家好网站建设yingkagou
  • 阿里云自助建站和华为云自助建站工商局网站怎么做身份确认
  • 恩施网站建设什么程序做网站
  • 做暖dnf动态ufo网站wordpress编写博客时如何写出代码
  • 电商网站开发重难点营销型网站建站
  • 长沙品牌网站建设实力强徐州微网站开发
  • 陇西学做网站廊坊网站搭建
  • 网站开发属于哪个部门关键词优化一般收费价格
  • 自己网站做问卷调查asp.net做的小网站
  • 新手做网站最简单流程抚州南城网站建设
  • 百度网站降级的原因淘宝网站开发框架
  • 轻量应用服务器可以做网站吗皮肤科在线医生免费咨询
  • 汉中公司做网站微网站建设是什么