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

公司做网站发生的费用分录wordpress文章文件夹

公司做网站发生的费用分录,wordpress文章文件夹,做淘宝优惠卷网站步骤,wordpress主题信息栈与队列以底层容器完成所有的工作&#xff0c;对外提供统一接口&#xff0c;且底层容器是可插拔的 1. 用栈实现队列 // 用两个栈实现队列// in入栈// out出栈 实现FIFOstack<int> stin;stack<int> stout;MyQueue() {}void push(int x) {stin.push(x);}int pop() …

栈与队列以底层容器完成所有的工作,对外提供统一接口,且底层容器是可插拔的

1. 用栈实现队列

    // 用两个栈实现队列// in入栈// out出栈 实现FIFOstack<int> stin;stack<int> stout;MyQueue() {}void push(int x) {stin.push(x);}int pop() {// 将元素放入out准备出栈if (stout.empty()) {while (!stin.empty()) {int a = stin.top();stin.pop();stout.push(a);}   } int b = stout.top();stout.pop();return b;}int peek() {// if (!stout.empty()) return stout.top();while (!stin.empty()) {int a = stin.top();stin.pop();stout.push(a);}return stout.top();}bool empty() {if (stin.empty() && stout.empty()) return true;return false;}

2. 用队列实现栈

可以用两个队列实现栈,也可以通过改变队列中元素的排列用一个队列实现栈来提高空间利用,以下是用一个队列实现栈的方法

    // 使用一个队列实现栈需要记录队列中元素的数量// 以此知道栈顶元素的位置int count = 0;queue<int> q;MyStack() {}// 用一个队列实现栈void push(int x) { q.push(x);count++;}int pop() {// 队列不为空if (count > 0) {int a = count-1;while (a--) {int b = q.front();q.pop();q.push(b);}}int res = q.front();q.pop();count--;return res;}int top() {// 直接调用pop()获取栈顶元素,记得还要将元素入栈,元素数量+1int res = this->pop();q.push(res);count++;return res;}bool empty() {if (count == 0) return true;return false;}

3. 有效的括号

这是一个对栈的应用:

    1. 遍历字符串遇到左括号就将对应右括号放入栈中,遇到匹配的右括号就将栈顶元素出栈,如果遍历完字符串刚好栈为空,说明是有效字符串

    2.如果在遍历的过程中发现下一个右括号和栈顶括号不匹配说明括号闭合失败,不是有效字符串

    3. 如果在遍历过程中发现栈是空的,说明前面有单独的右括号,也不是有效字符串

        // 由题意得字符数量一定是偶数if (s.size() % 2 != 0 ) return false;stack<char> st;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();}if (st.empty()) return true;return false;

4. 删除字符串中所有相邻重复项

本题也是对栈的应用:

遍历字符串将元素依次入栈,如果当前元素和栈顶元素执行出栈操作,且元素不入栈相当于完成了删除操作,最后栈内的元素就是答案

    string removeDuplicates(string s) {if (s.size() == 1) return s;else if(s.size() == 2) {if (s[0] == s[1]) return "";return s;}stack<char> st;// 执行删除操作for (int i = 0; i < s.size(); i++) {if (!st.empty() && st.top() == s[i]) {st.pop();continue;}st.push(s[i]);}// 收集结果string res;while(!st.empty()) {char a = st.top();st.pop();res+=a;}// 需要按照原字符串顺序输出reverse(res.begin(), res.end());return res;}

http://www.dtcms.com/a/417852.html

相关文章:

  • 小城市网站建设大数据营销 全网推广
  • 商丘购物网站开发设计wordpress怎么添加文章
  • 衡量网站质量的标准巢湖网站建设费用
  • 广州网站建设支付做网站设计工资多少钱
  • 一个备案号可以用几个网站seo高手培训
  • wordpress导入项目国内seo公司
  • 重庆百度seo整站优化网站建设vs网络推广
  • 临沂品牌网站建设公司多网合一网站平台建设
  • 网优 是什么网站手游平台十大排名
  • 网站站点多少钱泉州模板做网站
  • 上海做ui网站最好的公司网站建设宣传图ps
  • 做网站平台需要多少钱如何做百度关键词推广
  • 网站项目设计与制作浙江省交通建设工程监督管理局网站
  • 网站建设未验收会计账务处理1卡二卡三卡四卡精品hd
  • php网站后台教程建设代练网站
  • 软件开发与网站开发哪个好网站空间一般有多大
  • 嘉峪关市建设局公示公告网站自助建站 源码
  • 网站开发 性能方面建一个推广网站价格
  • 用dw做红米网站企业管理培训课程图片
  • 广州建网站腾虎网站域名续费怎么续费
  • 文明网站建设情况报告什么是网络营销环境
  • 常州做网站麦策电商公司简介怎么写吸引人
  • 建设数据库搜索网站设计公司营销策略
  • 网页在线制作网站源码网站建设实例分析
  • 个人微信公共号可以做微网站么阿里云建公司网站
  • 贵阳做网站做得好的做直播平台网站赚钱吗
  • 网站知识架构如何用手机建设网站
  • 做的网站如何发布最新远程网站建设服务
  • 摄影网站的规划与设计wordpress栏目管理
  • 哈尔滨建设信息网站网站搭建维护淄博