最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

编程题分类——队列栈

互联网 admin 1浏览 0评论

编程题分类——队列栈

目录

  • 前言
  • 正文
    • 1. 两个栈实现一个队列
    • 2. [有效的括号](/)
  • 参考

前言

正文

1. 两个栈实现一个队列

code

class Solution
{public:void push(int node) {stack1.push(node);}int pop() {if(stack2.size()!=0){int tmp = stack2.front();stack2.pop();return tmp;}else{//若栈二为空了,我们就要把栈一的值全都放在栈二中去while(stack1.size()!=0){int tmp = stack1.top();stack1.pop();stack2.push(tmp);}return pop();}}private:stack<int> stack1;stack<int> stack2;};

2. 有效的括号

题目

code

class Solution {
public:bool isValid(string s) {//基本思想就是用栈的形式,这种属于鸡蛋里挑骨头。就直接返回即可。if(s.size()==0)return false;stack<char> st;char str;bool flag = true;for(int i = 0;i<s.size();i++){if(s[i]=='('||s[i]=='{'||s[i]=='['){st.push(s[i]);}else if(!st.empty()){str = st.top();if(s[i]==')'){if(str!='(')return false;}else if(s[i]==']'){if(str!='[')return false;}else if(s[i]=='}'){if(str!='{')return false;}st.pop();}else{return false;//error3:防止有元素不满足入栈的条件,也没有做处理}}if(!st.empty())//error2:注意细节flag = false;return flag;}
};

参考

  1. 剑指Offer
  2. Leetcode 100题

编程题分类——队列栈

目录

  • 前言
  • 正文
    • 1. 两个栈实现一个队列
    • 2. [有效的括号](/)
  • 参考

前言

正文

1. 两个栈实现一个队列

code

class Solution
{public:void push(int node) {stack1.push(node);}int pop() {if(stack2.size()!=0){int tmp = stack2.front();stack2.pop();return tmp;}else{//若栈二为空了,我们就要把栈一的值全都放在栈二中去while(stack1.size()!=0){int tmp = stack1.top();stack1.pop();stack2.push(tmp);}return pop();}}private:stack<int> stack1;stack<int> stack2;};

2. 有效的括号

题目

code

class Solution {
public:bool isValid(string s) {//基本思想就是用栈的形式,这种属于鸡蛋里挑骨头。就直接返回即可。if(s.size()==0)return false;stack<char> st;char str;bool flag = true;for(int i = 0;i<s.size();i++){if(s[i]=='('||s[i]=='{'||s[i]=='['){st.push(s[i]);}else if(!st.empty()){str = st.top();if(s[i]==')'){if(str!='(')return false;}else if(s[i]==']'){if(str!='[')return false;}else if(s[i]=='}'){if(str!='{')return false;}st.pop();}else{return false;//error3:防止有元素不满足入栈的条件,也没有做处理}}if(!st.empty())//error2:注意细节flag = false;return flag;}
};

参考

  1. 剑指Offer
  2. Leetcode 100题

与本文相关的文章

发布评论

评论列表 (0)

  1. 暂无评论