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

江苏专业网站建设费用佛山网站建设公司怎么做

江苏专业网站建设费用,佛山网站建设公司怎么做,dw淘宝网页制作视频教程,营销策略方案栈和队列(Stack和Queue) 1:栈的概念 示意图: 2:创建一个类Stack,给定一个整形数组elem,数组已使用长度usedSize,默认长度default_size为10,再给定一个构造方法&#xff0…

栈和队列(Stack和Queue)

1:栈的概念

示意图:

2:创建一个类Stack,给定一个整形数组elem,数组已使用长度usedSize,默认长度default_size为10,再给定一个构造方法,初始化数组,将长度定为10。

3:push方法:新增元素

4:isFull方法:判断数组是否满了

5:pop方法:将栈顶元素出栈并返回

6:isEmpty方法:判断数组是否为空

7:peek方法:获取栈顶元素

 

8:reversePrintList方法:用栈逆序打印链表 

示意图:

主要思路:先通过while循环把链表的结点都放入stack中,再通过while循环把stack的栈顶元素一个一个拿出来,打印数值,实现链表的逆序打印。 

在main方法中运行:

输出结果:

 

9:isProper方法:出栈入栈次序匹配

第一个序列表示栈的压入顺序,判断第二个序列是否可能为栈的弹出顺序。

主要思路:把pushA数组的元素放入栈stack中,如果栈顶元素在循环遍历中与popA数组的元素匹配,且匹配完成后stack为空就代表全部配对成功。

在Test类main方法中调用:

将stack转换为整形数组array,并调用isProper方法。 

输出结果:

10:最小栈

获取栈内的最小元素。

示意图: 

 

push方法:往栈里放元素

先放stack,如果minStack为空,也放入。如果放入的元素小于minStack的栈顶元素,也放入minStack。

pop方法:取出栈顶元素

先取stack的栈顶元素,如果和minStack的栈顶元素一样,那么minStack也要取出栈顶元素。 

获取stack和minStack栈顶元素: 

在Test类main方法中调用:

输出结果:

1:队列的概念(Queue)

示意图:

2:首先定义一个MyQueue类,再定义一个内部类ListNode,思路与无头双向链表基本一致。

 3:offer方法:入队列

4:poll方法:出队列

5:pop方法:获取队头元素

6:size方法:获取队列中有效元素个数

7:isEmpty方法:判断队列是否为空

8: MyCircularQueue:环形队列

其本质是利用数组的思想来解决问题,类似于一个环形数组。

 示意图:

入队列和出队列: 

获取队头元素和队尾元素: 

第2个方法要专门分析,如果rear为0,则下标index等于数组的长度减1,也就是下标为7的位置;

如果rear不为0,则下标就为rear-1

判断是否为空和为满:

在Test类main方法中调用: 

输出结果:

9:用队列实现栈

示意图:

 

push方法:qu1不为空,x放入qu1;qu2不为空,x放入qu2;都为空就放入qu1。 

pop方法:移除并返回栈顶元素

先判断qu1和qu2是否为空,如果都为空就直接返回-1,结束程序。

如果qu1不为空,因为后面qu1.size()的大小会不断改变,所以赋给size1,成为定值。然后通过for循环遍历qu1,取出栈顶元素并赋给tmp,再把tmp放入qu2中。

注意size要减1,因为最后要return一个qu1.poll(),队列里面不能没有元素。 

如果qu2不为空,通过for循环遍历qu2,取出栈顶元素并赋给tmp,再把tmp放入qu1中。

top方法:返回栈顶元素 

先判断qu1和qu2是否为空,如果为空就直接返回-1结束程序。

如果qu1不为空,遍历qu1,把qu1的栈顶元素赋给tmp,再把tmp放入qu2中。

注意这里size1不用减1,因为最后直接返回tmp就可以了。

如果qu2不为空,遍历qu2,把qu2的栈顶元素赋给tmp,再把tmp放入qu1中。

 

在Test类main方法运行:

 

输出结果:

 

10:用栈实现队列 

实例化两个栈,用来实现一个队列的功能。

示意图:

 

 

peek方法:获取栈顶元素

如果s1和s2均为空,直接返回-1结束程序。

如果s2为空,当s1不为空的时候,取出s1栈顶元素放入s2中,最后返回s2栈顶元素。 

 

在Test类main方法中调用:

 

输出结果:

 


文章转载自:

http://PJIoi2Tw.gmpLp.cn
http://owzOZu0k.gmpLp.cn
http://FsZRheRj.gmpLp.cn
http://KsreOO5f.gmpLp.cn
http://x4pwoULJ.gmpLp.cn
http://Dscg4Hp0.gmpLp.cn
http://TDoHRLtz.gmpLp.cn
http://9EeDNAnp.gmpLp.cn
http://ckQEtaC2.gmpLp.cn
http://fDACPtvS.gmpLp.cn
http://dNhFFTLj.gmpLp.cn
http://njPRJBfs.gmpLp.cn
http://Im34JFVL.gmpLp.cn
http://bTzltNMc.gmpLp.cn
http://4FcYWmah.gmpLp.cn
http://pfSOtFQ5.gmpLp.cn
http://agtis3wy.gmpLp.cn
http://vlbKIxuz.gmpLp.cn
http://h7ReJe5w.gmpLp.cn
http://9XiNwWSn.gmpLp.cn
http://iXI0N6qQ.gmpLp.cn
http://YF5DgfOK.gmpLp.cn
http://Fh2UcRqC.gmpLp.cn
http://wfxy6VQD.gmpLp.cn
http://vkj5ZxwH.gmpLp.cn
http://eNcP6E4u.gmpLp.cn
http://wkVUDPE9.gmpLp.cn
http://sIEB8PAr.gmpLp.cn
http://EHbYv58P.gmpLp.cn
http://uIw8DwQg.gmpLp.cn
http://www.dtcms.com/wzjs/655798.html

相关文章:

  • 国外试用网站空间微信小程序毕业设计
  • 长春市城乡建设局网站网页制作与设计在哪搜题
  • 网站多久被百度收录怎么做英文网站
  • 扬州建网站做网站的如何找业务
  • 电信ip做的网站移动不能访问做网页用什么软件好
  • 小程序网站wordpress搜索频率
  • 建设项目环保备案登记网站重庆网站开发解决方案
  • dedecms做门户网站零基础怎么做电商
  • 做网站技术员电商数据分析与数据化运营
  • 无锡快速建设网站方法设备 光速东莞网站建设
  • 网站 标题 关键词 描述抖音电商官网
  • 网站制作 手机微信saas平台
  • 无忧网站自适应网站方案
  • 营销型网站建设设定包括哪些方面谷歌play商店
  • 京东网站难做吗百度指数排行榜
  • html网站优化宁波建设业协会网站
  • 济南网站建设模板沧州网站建设推广
  • 做网站对企业有什么好处临清网站建设费用
  • 宁波网站制作费用网站 图标 素材
  • 怎么看一个网站是用什么程序做的wordpress 移动端插件
  • 一个完整的网站制作流程学校部门网站的建设
  • 做百度推广需要有自己的网站吗什么是前端开发技术
  • 怎么做挣钱的网站wordpress notes
  • 网站建设推广安徽微信公众号手机网站
  • 网站分为哪些部分用python写一个简单的网页
  • 云端建站快车虚拟服务器有免费的吗
  • 爱站库广州公司注册名称查询
  • 东莞樟木头网站建设公司wordpress动态导航侧边栏
  • 局域网站建设银行信用卡简单学校网站模板
  • php模板建站株洲网站开发