这期内容当中小编将会给大家带来有关如何在java数据结构中实现栈和队列,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
创新互联建站是一家集网站建设,泸水企业网站建设,泸水品牌网站建设,网站定制,泸水网站建设报价,网络营销,网络优化,泸水网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
java 数据结构中栈和队列的实例详解
栈和队列是两种重要的线性数据结构,都是在一个特定的范围的存储单元中的存储数据。与线性表相比,它们的插入和删除操作收到更多的约束和限定,又被称为限定性的线性表结构。栈是先进后出FILO,队列是先进先出FIFO,但是有的数据结构按照一定的条件排队数据的队列,这时候的队列属于特殊队列,不一定按照上面的原则。
实现栈:采用数组和链表两种方法来实现栈
链表方法:
package com.cl.content01; /* * 使用链表来实现栈 */ public class Stack{ Node top=null; public boolean isEmpty(){ return top==null; } /* * 出栈 */ public void push(E data){ Node nextNode=new Node (data); nextNode.next=top; top=nextNode; } /* * 出栈 */ public E pop(){ if(this.isEmpty()){ return null; } E data =top.datas; top=top.next; return data; } } /* * 链表 */ class Node { Node next=null; E datas; public Node(E datas){ this.datas=datas; } }
实现队列:同栈一样
链表方法:
package com.cl.content01; public class MyQueue{ private Node head=null; private Node tail=null; public boolean isEmpty(){ return head==null; } public void put(E data){ Node newNode=new Node (data); if(head==null&&tail==null) head=tail=newNode; else tail.next=newNode; tail=newNode; } public E pop(){ if(this.isEmpty()) return null; E data=head.data; head=head.next; return data; } public int size(){ int n=0; Node t=head; while(t!=null){ n++; t=t.next; } return n; } public static void main(String[] args) { MyQueue q=new MyQueue (); q.put(1);q.put(3);q.put(2); System.out.println(q.pop()); System.out.println(q.size()); System.out.println(q.pop()); } } class Node { Node next=null; E data; public Node(E data){ this.data=data; } }
上述就是小编为大家分享的如何在java数据结构中实现栈和队列了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注创新互联行业资讯频道。