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

网站开发需求单百度发视频步骤

网站开发需求单,百度发视频步骤,做地税电子签章的网站,郑州开发小程序多少钱本文内容来自于代码随想录 栈 用栈实现队列 两个栈实现队列。思路:两个栈分别表示入栈和出栈。 入队:直接入栈出队: a. 出栈为空,先把入栈中的元素全部放到出栈中(相当于反过来,这样在出栈的时候先进的元…

本文内容来自于代码随想录

用栈实现队列

两个栈实现队列。思路:两个栈分别表示入栈和出栈。

  1. 入队:直接入栈
  2. 出队:
    a. 出栈为空,先把入栈中的元素全部放到出栈中(相当于反过来,这样在出栈的时候先进的元素就变成先出了),然后弹出栈顶
    (2)出栈不为空,那么栈顶就是要出队的元素,直接弹出栈顶

说明:当出栈入栈都有元素的时候,出栈中的元素一定是先入队的,要弹栈优先弹出栈中的元素。出栈空了,再把入栈的元素放到出栈中,再弹栈。

/**
两个栈分别表示入栈和出栈
1. 入队:直接入栈
2. 出队:
(1)出栈为空,先把入栈中的元素全部放到出栈中(相当于反过来,这样在出栈的时候先进的元素就变成先出了),然后弹出栈顶
(2)出栈不为空,那么栈顶就是要出队的元素,直接弹出栈顶
说明:当出栈入栈都有元素的时候,出栈中的元素一定是先入队的,要弹栈优先弹出栈中的元素。出栈空了,再把入栈的元素放到出栈中,再弹栈*/class MyQueue {Stack<Integer> in;Stack<Integer> out;public MyQueue() {in = new Stack<>();out = new Stack<>();}public void push(int x) {in.push(x);}public int pop() {if (out.empty()) {inToOut();}return out.pop();}public int peek() {if (out.empty()) {inToOut();}return out.peek();}public boolean empty() {return in.empty() && out.empty();}public void inToOut() {// 把入栈中的元素全部放到出栈中while (!in.empty()) {int x = in.pop();out.push(x);}}
}/*** Your MyQueue object will be instantiated and called as such:* MyQueue obj = new MyQueue();* obj.push(x);* int param_2 = obj.pop();* int param_3 = obj.peek();* boolean param_4 = obj.empty();*/

队列

用队列实现栈

两个队列实现栈。用栈模拟队列相对就容易一点,用两个队列。区别在于:另外一个队列只是用来备份数据。在弹栈的时候

  1. 先将 q1 中的数据出队到只剩一个,保存在 q2 中
  2. 将 q1 中最后一个数据出队。最后一个数据就是栈顶
  3. 将 q2 中的数据再出队,保存到 q1 中
class MyStack {Queue<Integer> q1;Queue<Integer> q2;public MyStack() {q1 = new LinkedList<>();q2 = new LinkedList<>();}public void push(int x) {q1.offer(x);}public int pop() {oneToTwo();int x = q1.poll();TwoToOne();return x;}public int top() {oneToTwo();int x = q1.poll();q2.offer(x);TwoToOne();return x;}public boolean empty() {return q1.isEmpty();}public void oneToTwo() {while (q1.size() > 1) {int x = q1.poll();q2.offer(x);}}public void TwoToOne() {while (!q2.isEmpty()) {int x = q2.poll();q1.offer(x);}}
}/*** Your MyStack object will be instantiated and called as such:* MyStack obj = new MyStack();* obj.push(x);* int param_2 = obj.pop();* int param_3 = obj.top();* boolean param_4 = obj.empty();*/

经典题型

  • 有效的括号
  • 删除字符串中的所有相邻重复项
  • 逆波兰表达式求值
  • 前 K 个高频元素
http://www.ds6.com.cn/news/17774.html

相关文章:

  • 安徽华力建设集团网站智谋网站优化公司
  • 东莞网络优化专注乐云seo株洲seo优化
  • 给做网站公司写锦旗语经典软文文案
  • 教育公司 网站建设网站推广要点
  • 建设网购网站查关键词热度的网站
  • 商城网站建设开发web软件最好最全的搜索引擎
  • 中国建设银行官网站e路护航网站建设制作
  • 旅游网站模板 手机推广普通话手抄报简单又好看
  • 珠海做网站哪家好seo学校培训
  • 广东汽车品牌网站建设免费的自助建站
  • 山东网站建设公司0元免费做代理
  • 最好的编程培训学校班级优化大师客服电话
  • 杭州网站建设maoeye免费平台
  • 数码产品销售网站建设策划书seo研究中心倒闭
  • 外贸网站怎么做推广百度账号管家
  • 西安网页设计师网站做优化
  • 做网站主页上主要放哪些内容百度广告服务商
  • 招聘网站如何做运营品牌策划的五个步骤
  • 网站建设领域文章网站seo诊断报告怎么写
  • 做网站至少多少钱windows优化大师会员兑换码
  • 小程序商城多少钱seo用什么论坛引流
  • 模板网站有利于优化微信app小程序开发
  • 北京网络营销招聘网上海seo优化公司 kinglink
  • 拼多多网站建设合同优化大师有用吗
  • 深圳网站建设 网站设计市场营销最有效的手段
  • 做企业网站模板可以seo商丘seo优化
  • 个体工商户可以做网站备案吗网站建设方案设计书
  • 六合网站建设在线推广企业网站的方法有
  • 重庆潼南网站建设公司电话个人自己免费建网站
  • jsp动态网站开发书籍肇庆seo排名外包