Java队列
队列是一种特殊的线性表,它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作。进行插入操作的端称为队尾,进行删除操作的端称为队头。队列中没有元素时,称为空队列。
在队列这种数据结构中,最先插入的元素将是最先被删除的元素;反之最后插入的元素将是最后被删除的元素,因此队列又称为“先进先出”(FIFO—first in first out)的线性表。
队列空的条件:front=rear
队列满的条件: rear = MAXSIZE
package com.javaer.examples.datastruct;
import java.util.LinkedList;
import java.util.Queue;
public class QueueExample {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Queue queue = new LinkedList();
queue.offer("1.First");
queue.offer("2.Second");
queue.offer("3.Third");
queue.offer("4.Fourth");
queue.offer("5.Five");
System.out.println("大小: " + queue.size());
System.out.println("队列头采用 peek : " + queue.peek());
System.out.println("队列头采用 element: " + queue.element());
Object data;
while ((data = queue.poll()) != null) {
System.out.println(data);
}
}
}
output
大小: 5
队列头采用 peek : 1.First
队列头采用 element: 1.First
1.First
2.Second
3.Third
4.Fourth
5.Five