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

网站集约化建设规划竞价排名是按照什么来计费的

网站集约化建设规划,竞价排名是按照什么来计费的,坑梓网站建设服务项目,wordpress 3.5 下载地址目录 一、栈的概念 二、栈的基本方法 三、栈的模拟实现 四、栈的练习 1、括号匹配 2、出栈入栈次序匹配 一、栈的概念 栈是一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶,另一端称为栈底…

目录

一、栈的概念

二、栈的基本方法

三、栈的模拟实现 

四、栈的练习

1、括号匹配  

 2、出栈入栈次序匹配


一、栈的概念

栈是一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶,另一端称为栈底。其特点是数据元素先进后出(先入栈的元素后出栈)

 入栈与出栈:

入栈:栈的插入操作叫做进栈/压栈/入栈。入数据在栈顶。

出栈:栈的删除操作叫做出栈。出数据在栈顶。

还不太理解的小伙伴可以看看以下图示:

 

 

二、栈的基本方法

 栈的基本方法有:push()(入栈)、pop()(出栈)、peek()(获取栈顶元素,不删除)、empty()(判断栈是否为空)

三、栈的模拟实现 

 以下的代码我们默认数据元素是整型。

import java.util.Arrays;public class MyStack {public int[] elem;//存放数据的数组public int usedSize;//当前数据的个数public MyStack() {elem=new int[10];}//入栈public void push(int val){if(isFull()){//满了就扩容elem= Arrays.copyOf(elem,elem.length*2);}elem[usedSize]=val;usedSize++;}//判断栈是否满了private boolean isFull(){return elem.length==usedSize;}//出栈public int pop(){if(isEmpty()){return -1;}int getVal=elem[usedSize-1];usedSize--;return getVal;}//判断栈是否为空public boolean isEmpty(){return usedSize==0;}//获取栈顶元素,不删除public int peek(){if(isEmpty()){return -1;}return elem[usedSize-1];}
}

四、栈的练习

1、括号匹配  

 20. 有效的括号 - 力扣(LeetCode)

题目要求如下: 

 

 解题思路:先创建一个字符类型的栈,再遍历字符串,如果是左括号就入栈,如果是右括号,就看是否与栈顶元素匹配,不匹配返回false,遍历结束后看栈是否为空,不为空则返回false(这是为了防止类似于"(((("的情况出现)。

class Solution {public boolean isValid(String s) {Stack<Character> stack=new Stack<>();//创建一个字符类型的栈for(int i=0;i<s.length();i++){char ch=s.charAt(i);//获取i下标字符if(ch=='('||ch=='{'||ch=='['){//如果是左符号,入栈stack.push(ch);}else{if(stack.empty()){//判断栈是否为空,为空则返回falsereturn false;}char loop=stack.peek();//判断左右是否匹配,若不匹配则返回false,否则栈顶元素出栈if(loop=='('&&ch==')'||loop=='['&&ch==']'||loop=='{'&&ch=='}'){stack.pop();}else{return false;}}}//遍历结束后看栈是否为空,不为空则返回false(这是为了防止类似于"(((("的情况出现)if(!stack.empty()){return false;}return true;}
}

 2、出栈入栈次序匹配

栈的压入、弹出序列_牛客题霸_牛客网

题目要求如下: 

 

解题思路:创建一个整型栈,遍历pushV,对每个元素进行入栈操作,再创建一个循环,判断该元素是否与popV[j]相等,若相等则出栈,移动j下标,当遍历完pushV后,若栈空,则匹配,反之不匹配。

import java.util.*;public class Solution {/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可** * @param pushV int整型一维数组 * @param popV int整型一维数组 * @return bool布尔型*/public boolean IsPopOrder (int[] pushV, int[] popV) {// write code hereStack<Integer> stack=new Stack<>();//创建一个整型栈int j=0;for(int i=0;i<pushV.length;i++){//遍历pushVstack.push(pushV[i]);//入栈//如果栈顶元素与popV[j]相等,出栈,移动j下标while(j<popV.length&&!stack.empty()&&popV[j]==stack.peek()){stack.pop();j++;}}return stack.empty();}
}

以上便是本篇文章的全部内容,感谢各位看官支持~~~

http://www.dtcms.com/wzjs/62260.html

相关文章:

  • 广州沙河一起做网站网上软文发稿平台
  • 公司注册网站开发的行业表述百度推广收费多少
  • 做网站可视化如何推广app更高效
  • 电影网站做多大会有风险seo优化主要工作内容
  • 设计型网站自带优化网站建设产品介绍
  • 深圳自助企业建站模版手机怎么搭建网站
  • 重庆市卫生厅网站 查询前置审批中国突然宣布一重磅消息
  • 遵义建立公司网站的步骤免费做网站网站
  • 佛山 网站建设 骏域表白网页制作免费网站制作
  • 北京网站设计公司排名抖音seo是什么意思
  • 沧州网站建设益志科技实时积分榜
  • 做电商宠物带哪个网站最好总裁培训班
  • 做网站备案是承诺书是啥天津seo排名收费
  • 建设网站怎样通过流量赚钱北京网站优化校学费
  • 个人网站备案麻烦产品软文是什么意思
  • 企业内部网站建设网站seo搜索引擎优化题库
  • 对网站做打包备份处理静态网站模板
  • 简述网站建设的方法长沙seo咨询
  • 做图骂人的图片网站电工培训技术学校
  • 网站开发需求分析报告制作网站需要什么技术
  • h5制作微信小程序免费关键词排名优化软件
  • 代购网站怎么做的互联网广告公司排名前十
  • 开发网站公司收入淘宝关键词优化
  • 大连哪里做网站搜索引擎搜索
  • 网站怎样做优化江门网站开发多少钱
  • 深圳网站建设网站制作网站推广东莞百度网站排名优化
  • wordpress 左侧客服深圳网站seo公司
  • 如何做网络集资网站seo顾问能赚钱吗
  • 怎么做网站的动效成都优化官网公司
  • 上海公司注册地址有什么要求抖音优化