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

顺序队列

时间:2015-06-11 17:09:29      阅读:125      评论:0      收藏:0      [点我收藏+]

标签:

public class SqQueue {

	int[] data;
	int front, rear;
	SqQueue() {
		data = new int[30];
		front = rear = -1;
	}
	boolean empty() {
		return front == rear;
	}
	
	boolean enQueue(int e) {
		if(rear == 29)
			return false;
		rear++;
		data[rear] = e;
		return true;
	}
	
	int[] deQueue() {
		int[] arr = new int[2];
		if(front == rear) {
			arr[0] = 0;
			return arr;
		}
		arr[0] = 1;
		front++;
		arr[1] = data[front];
		return arr;
	}
	
	void display() {
		for(int i=front+1; i<=rear; i++) {
			if(i != rear) {
				System.out.print(data[i] + "->");
			} else {
				System.out.println(data[i]);
			}
		}
	}
	public static void main(String[] args) {
		SqQueue sq = new SqQueue();
		System.out.println(sq.empty());
		sq.enQueue(4);
		sq.enQueue(5);
		sq.display();
		sq.deQueue();
		sq.deQueue();
		System.out.println(sq.empty());
		sq.display();
		sq.enQueue(1);
		sq.enQueue(3);
		sq.display();
		sq.deQueue();
		sq.display();
		sq.enQueue(2);
		sq.deQueue();
		sq.display();
		System.out.println(sq.empty());

	}

}


结果:

true
4->5
true
1->3
3
2
false

ps:1、队空条件为 front==rear

         2、队满条件为rear==maxSize-1

         3、队尾指针总是指向队列中队尾的元素,而队头指针总是指向队列中队头元素的前一个元素。

顺序队列

标签:

原文地址:http://blog.csdn.net/qhairen/article/details/46457117

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