介绍
今天就跟大家聊聊有关Java实现队列的方法有哪些,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
<强>数组实现队列强>
//数组实现队列 队列类{ int []=new int [5]; int i=0;//入队操作 公共空间(int) { (+ +)=m; }//出队列操作取出最前面的值通过循环遍历把所有的数据向前一位 公共int () { int指数=0; int temp=[0]; for (int j=0; j & lt;i, j + +) { 一个[j]=[j + 1); } 返回临时; } }
<>强ArrayList实现队列强>
//集合实现队列 队列类{ List列表=new ArrayList (); int指数=0; 公共空间(int n) { list.add (n); 指数+ +; }//出队列操作//出队 公共int () { 如果(! list.isEmpty ()) { 指数——; 返回list.remove (0); } 返回1; } }
<>强两个堆栈实现队列强>
//两个堆栈实现一个队列 类queue3 { StackstackA=new Stack (); Stack stackB=new Stack ();//入队 公共空间(int n) { stackA.push (n); }//出队我们把一个里面的元素遍历拿出放入B中再拿出B中的第一个元素 公共int () {//判断b栈有没有元素有返回假无返回真 如果(stackB.isEmpty ()) { 而(! stackA.isEmpty ()) { stackB.push (stackA.pop ()); } } 返回stackB.pop (); } }
<强> java使用链表实现队列强>
队列使用java进行链表实现,在网上找到了一张图,很好,借鉴一下
设置两个结点节点,指前向队首元素,后指向队尾;
上代码:
公共类LinkedQueue { 节点前面;//队头指针,指向队头节点 节点铁路;//队尾指针,指向队尾节点 int大?0;//记录队列长度//构造函数 公共LinkedQueue () { 前面=铁路=零; } 公共布尔isEmpty () { 返回大?=0,# 63;真:假; }//添加元素 避署公共布尔addQueue(对象){ 如果(大?=0){ 前面=新节点(null,避署); 铁路=前面; 大小+ +; 返回true; } 节点s=新节点(null,避署);//这块有个主意的地方,一旦铁路设置了下属性,因为前节点与铁路节点指向了同一个节点节点,持有同一个结点的一个引用,因此节前面点下属性也被填充 rail.setNext(年代); 铁路=s; 大小+ +; 返回true; }/* * *删除元素,出队列 * @return */公共布尔deleteQueue () { 如果(isEmpty ()) { System.out.println(“当前队列为空“); 返回错误; } 前面=front.next; 大小,; 返回true; } 公共静态void main (String [] args) { LinkedQueue队列=new LinkedQueue (); queue.addQueue (1); queue.addQueue (2); queue.addQueue (3); queue.deleteQueue (); } }/* * *首先链表底层是一个个结点 */{类节点 节点下; 对象元素; 公共节点(节点的下一个对象元素){ 这一点。下一个=下一个; 这一点。元素=元素; } 公共节点getNext () { 返回下一个; } 公共空间setNext(节点下){ 这一点。下一个=下一个; } 公共对象getElement () { 返回元素; } 公共空间setElement(对象元素){ 这一点。元素=元素; } }
看完上述内容,你们对Java实现队列的方法有哪些有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。