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

北京网站建设亿玛酷出名5关键词优化骗局

北京网站建设亿玛酷出名5,关键词优化骗局,做视频网站盈利多少,wordpress seo不好文章目录 题目一、什么是队列和栈?1.1队列1.2栈 二、具体实现2.1 思路分析2.2代码实现 题目 用两个栈实现一个队列,实现在队列尾部插入节点和在队列头部删除节点的功能。 一、什么是队列和栈? 1.1队列 队列是一种特殊的线性表,…

文章目录

  • 题目
  • 一、什么是队列和栈?
    • 1.1队列
    • 1.2栈
  • 二、具体实现
    • 2.1 思路分析
    • 2.2代码实现


题目

用两个栈实现一个队列,实现在队列尾部插入节点和在队列头部删除节点的功能。


一、什么是队列和栈?

1.1队列

队列是一种特殊的线性表,它只允许在表的前端(队头)进行删除操作,在表的后端(队尾)进行插入。
故队列又称为先进先出(FIFO—first in first out)线性表。
在这里插入图片描述

1.2栈

栈作为一种数据结构,是一种只能在一端进行插入和删除操作的特殊线性表。
它按照后进先出(LIFO—last in first out)的原则存储数据,先进入的数据被压入(push)栈底,最后的数据在栈顶,需要读数据的时候从栈顶开始弹出(pop)数据(最后一个数据被第一个读出来)。
栈在计算机领域被广泛应用,比如:操作系统会给每个线程创建一个栈用来存储函数调用时各个函数的参数、返回地址及临时变量等。
在这里插入图片描述

二、具体实现

2.1 思路分析

在这里插入图片描述

(a)在stack1中依次插入a、b、c,stack2为空
(b)现在从队列中删除一个元素,按照队列先入先出的规则,最先删除的应该是a。
但是a在栈底不能直接删除,这时候可以借助stack2,将元素逐个弹出(pop)并压入(push)stack2,则元素在stack2中的顺序{从c、b、a}正好和stack1中相反,此时就可以弹出stack2的栈顶a,如图b。
(c)如果想继续删除队列头部,按照最开始的顺序,b比c早进入队列,此时应该删除b。b正好在stack2的栈顶,只需要弹出stack2的栈顶即可。如图c。

这样就可以总结出一个删除的步骤:
1、当stack2不为空时,stack2就是栈顶就是最先进入队列的元素,可以弹出。
2、当stack2为空时,将stack1中的元素逐个弹入stack2中,由于先进入队列的元素被压到stack1栈底,经过弹出和压入操作后位处stack2栈顶,就可以直接弹出。

(d)接下来插入一个元素d,把它压入stack1。
(e)现在考虑删除一个元素,此时stack2不为空,直接弹出c,而c确实比d先进入队列,因此也是正确的。

2.2代码实现

代码如下:

import java.util.*;
import java.util.Stack;
public class CQueue{Stack<Integer> stack1 = new Stack<Integer>();Stack<Integer> stack2 = new Stack<Integer>();public void push(int node){stack1.push(node);}public int pop(){if(stack2.isEmpty()){//将第一个栈中内容弹出放入第二个栈中while(!stack1.isEmpty()){stack2.push(stack1.pop());}}if(stack2.isEmpty()){Throw new Exception(queue is empty!);}int head = stack2.pop();return head;}}

http://www.hkea.cn/news/752917/

相关文章:

  • 永年网站建设友链互换平台推荐
  • 企业网站的设计公司网络广告营销的典型案例
  • 高校思政主题网站建设的意义关键词歌词任然
  • 哪里做网站比较快2345网址导航下载桌面
  • 广州建设委员会官方网站凡科建站下载
  • 全球做网站的公司排名百度一下你就知道官网
  • 小企业网站价格免费发链接的网站
  • 买了空间和域名 怎么做网站哪家公司网站做得好
  • 网站备案是否关闭衡阳网站建设公司
  • 遂昌建设局网站个人怎么做网站
  • 软件开发和网站建设网络营销的未来6个发展趋势
  • 做网站一年多少钱免费seo网站推广
  • 智通人才网东莞最新招聘信息官网seo是如何做优化的
  • 个人做跨境电商网站百度地图导航手机版免费下载
  • 阿里云注册网站之后怎么做网站百度联盟是什么
  • 动画制作视频河南网站排名优化
  • 网站关键词怎么做排名掌门一对一辅导官网
  • 现在什么网站做推广比较好网页设计需要学什么
  • 个人购物网站 怎么建网络营销包括
  • 有没有做鸭的网站工作室招聘广州网站优化工具
  • 深圳营销外深圳网络营销公司seo和sem的联系
  • 专业的网站制作公司哪家好竞价专员是做什么的
  • 海南省建设厅网站百度seo霸屏软件
  • 淄博张店做网站的公司爱站小工具圣经
  • wordpress w3seo优化自学
  • 临沂手机建站模板微信seo排名优化软件
  • 网站管理员怎么做板块建设艺人百度指数排行榜
  • 如何创建企业网站网络舆情处置的五个步骤
  • 做站长工具网站周口seo公司
  • 泉州自助建站系统地推