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

河北网站建站制作网站的二次开发是什么意思

河北网站建站制作,网站的二次开发是什么意思,市工商局网站建设情况,网页制造基础课程目录 1.概念 2.队列的使用 3.队列模拟实现 4.循环队列 5.双端队列 6.OJ题 6.1 用队列实现栈 6.2 用栈实现队列 1.概念 #xff08;1#xff09;队列是只允许在一端进行插入数据操作#xff0c;在另一端进行删除数据操作的特殊线性表#xff1b; #xff08;21队列是只允许在一端进行插入数据操作在另一端进行删除数据操作的特殊线性表 2队列具有先进先出后进后出的特点 3入队列进行插入操作的一端称为队尾 出队列进行删除操作的一端称为队头 2.队列的使用 在java中Queue是个接口底层是通过链表实现的其常用方法如下 方法功能boolean offer(E e)入队列E poll()出队列peek()获取队头元素int size()获取队列中有效元素的个数boolean isEmpty()检测队列是否为空 3.队列模拟实现 1包类关系 2TestMyQueue package TestMyQueue;import TestMyStack.EmptyException;public class MyQueue {// 使用单链表实现队列static class Node{public int val;public Node next;public Node(int val){this.val val;}}public Node head;public Node last;public int usedSize;public void offer(int val){Node newNode new Node(val);if(head null){head newNode;last newNode;}else{last.next newNode;last newNode;usedSize;}}public int poll(){if(isEmpty()){throw new EmptyException();}int ret head.val;head head.next;return ret;}public boolean isEmpty(){return usedSize 0;}public int peek(){if(isEmpty()){throw new EmptyException();}int ret head.val;return ret;}public int getUseSize(){return usedSize;} } 3EmptyException package TestMyQueue;public class EmptyException extends RuntimeException{public EmptyException(){} } 4.循环队列 题目链接622. 设计循环队列 - 力扣LeetCode 代码 class MyCircularQueue {private int[] elem;private int front; // 表示队列的头private int rear; // 表示队列的尾public MyCircularQueue(int k) {this.elem new int[k1];}public boolean enQueue(int value) {// 入队列判满if(isFull()){return false;}elem[rear] value;rear (rear1)% elem.length;return true;}public boolean deQueue() {// 判空if(isEmpty()){return false;}front (front1)% elem.length;return true;}public int Front() {if(isEmpty()){return -1;}return elem[front];}public int Rear() {if(isEmpty()){return -1;}int index (rear0)?elem.length-1:rear-1;return elem[index];}public boolean isEmpty() {return front rear;}public boolean isFull() {// 写法1 // if( (rear1) % elem.length front){ // return true; // } // return false;// 写法2return (rear1)% elem.length front;} } 5.双端队列 双端队列是指允许两端都可以进行入队和出队操作的队列 Deque是一个接口使用时必须创建其实现类类的对象 常用的实现类为ArrayDeque由数组实现的双端队列和LinkedList由双向链表实现的双端队列故而实例化Deque的方式有以下两种  // 链式双端队列DequeInteger deque new LinkedList();// 数组双端队列DequeInteger deque2 new ArrayDeque(); 注也可以使用Deque实现顺序栈 实际上以下写法 StackInteger stack new Stack(); 即直接使用Stack类实例化栈对象是很少用的可以使用ArrayDeque创建顺序栈对象 DequeInteger stack2 new ArrayDeque(); 6.OJ题 6.1 用队列实现栈 题目链接225. 用队列实现栈 - 力扣LeetCode 解题思路使用两个队列实现栈元素入栈至不为空的队列元素出栈在不为空的队列出栈size-1个元素最后余下的元素就是要出栈的元素如果两个队列均为空则入第一个队列 代码 public class MyStack {private QueueInteger queue1;private QueueInteger queue2;public MyStack() {queue1 new LinkedList();queue2 new LinkedList();}public void push(int x) {if(!queue1.isEmpty()){queue1.offer(x);}else if(!queue2.isEmpty()){queue2.offer(x);}else{queue1.offer(x);}}public int pop() {if(empty()){// 当前栈为空return -1;}if(!queue1.isEmpty()){int size queue1.size();for(int i0;isize-1;i){//for(int i0;iqueue1.size()-1;i){ //写法错误,poll会导致size变化int ret queue1.poll();queue2.offer(ret);}return queue1.poll();}else{int size queue2.size();for(int i0;isize-1;i){int ret queue2.poll();queue1.offer(ret);}return queue2.poll();}}public int top() {if(empty()){return -1;}if(!queue1.isEmpty()){int size queue1.size();int ret -1;for(int i0;isize;i){ret queue1.poll();queue2.offer(ret);}return ret;}else{int size queue2.size();int ret -1;for(int i0;isize;i){ret queue2.poll();queue1.offer(ret);}return ret;}}public boolean empty() {return queue1.isEmpty() queue2.isEmpty();} } 6.2 用栈实现队列 题目链接232. 用栈实现队列 - 力扣LeetCode 解题思路使用两个栈实现队列stack1用于入栈元素当需要出栈元素时若stack2不为空直接出栈stack2栈顶元素如果stack2为空就将stack1的所有元素入栈到stack2中再出栈stack2顶元素即可 代码 class MyQueue {private StackInteger stack1;private StackInteger stack2;public MyQueue() {stack1 new Stack();stack2 new Stack();}public void push(int x) {stack1.push(x);}public int pop() {if(empty()){return -1;}if(stack2.empty()){while(!stack1.empty()){stack2.push(stack1.pop());}}return stack2.pop();}public int peek() {if(empty()){return -1;}if(stack2.empty()){while(!stack1.empty()){stack2.push(stack1.pop());}}return stack2.peek();}public boolean empty() {return stack1.empty() stack2.empty();} }
http://www.dnsts.com.cn/news/206514.html

相关文章:

  • 商务网站规划与建设课程设计wordpress 多媒体分类
  • 正能量不良网站直接进入北京哪里有做网站的
  • 潍坊建设gc局网站健康东莞app怎么下载
  • 有什么值得做的网站怎么看一个网站有没有做301
  • 网路神做网站怎么样wordpress源码商城模板
  • 商务邮箱注册六盘水seo
  • 书店网站模板如何破解WordPress网站
  • 东莞网站建设教程wordpress里点击图片放大
  • 江苏中南建设集团网站是多少钱wordpress win
  • 网站建设黄页视频枣庄市市中区建设路网站
  • 建一个设计网站要多少钱wordpress主题汉化是什么
  • 天津哪家公司做企业网站扫一扫识别图片
  • 著名网站设计师腾讯云物联网开发平台
  • sem可以为网站建设做什么哈市那里网站做的好
  • 广东网站建设网h5制作软件 知乎 推荐
  • 天津网站建设公司电扬房山建设网站
  • 网站双线主机优势如何加强旅游电子商务网站的建设
  • 镇江网站定制wordpress主题安装掉线
  • 怎么建设免费小说网站龙华做网站的公司
  • 模板网站建设公司静态网站开发技术
  • 网站建设推广重要性wordpress android 源码
  • 成都教育行业网站建设国家建筑规范标准网
  • 宁波网站推广平台咨询公司网页设计欣赏案例
  • 河北明迈特的网站在哪里做的网站开发目的
  • 静态网站开发实验报告网络营销是什么一种市场营销方式
  • 360搜索的网站收录入口wordpress single.php 调用文章内容
  • 新网互联魔方手机网站建站系统WordPress百家号同步插件
  • 网站开发语言和数据库有几种简述网络营销的概念与特点
  • 织梦小说网站模板下载可视化小程序开发工具
  • 网站雪花飘落代码定制网站建设设计公司