码迷,mamicode.com
首页 > 其他好文 > 详细

数据结构之队列

时间:2016-06-12 23:39:54      阅读:254      评论:0      收藏:0      [点我收藏+]

标签:java 基础

/**

 * 环形队列

 *

 */

public class AnnularQueue

{

int[] intArray; // 容器

int size; // 长度

int head; // 头

int tail; // 尾

public AnnularQueue(int size)

{

intArray = new int[size];

size = 0;

head = 0;

tail = -1;

}

/**

* 判满

* @return

*/

public boolean isFull()

{

if(intArray.length == size)

return true;

return false;

}

public boolean isEmpty()

{

if(size == 0)

return true;

return false;

}

/**

* 入队

* @param i

* @return

*/

public boolean push(int i)

{

if(isFull())

return false;

intArray[++tail%intArray.length] = i;

size++;

return true;

}

/**

* 出队

* @param j

* @return

*/

public int remove()

{

if(isEmpty())

return -1;

size--;

return intArray[head++%intArray.length];

}

/**

* 遍历

*/

public void traverse()

{

for(int i = head; i < head + size; i++)

   System.out.println(intArray[i%intArray.length]);

}


public static void main(String[] args)

{

AnnularQueue queue = new AnnularQueue(4);

queue.push(100);

queue.push(200);

queue.push(300);

queue.push(400);

queue.push(500);

queue.traverse();

System.out.println(queue.remove());

System.out.println(queue.remove());

System.out.println(queue.remove());

queue.push(700);

queue.traverse();

}


}


数据结构之队列

标签:java 基础

原文地址:http://881206524.blog.51cto.com/10315134/1788450

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!