在Java中,您可以使用LinkedList類來實現自定義隊列
import java.util.LinkedList;
public class CustomQueue<T> {
private LinkedList<T> list = new LinkedList<T>();
// 入隊操作
public void enqueue(T item) {
list.addLast(item);
}
// 出隊操作
public T dequeue() {
if (isEmpty()) {
throw new IllegalStateException("隊列為空");
}
return list.removeFirst();
}
// 查看隊首元素
public T peek() {
if (isEmpty()) {
throw new IllegalStateException("隊列為空");
}
return list.getFirst();
}
// 判斷隊列是否為空
public boolean isEmpty() {
return list.isEmpty();
}
// 獲取隊列大小
public int size() {
return list.size();
}
}
這個CustomQueue類是一個泛型類,可以存儲任何類型的對象。它使用LinkedList作為內部數據結構,實現了基本的隊列操作,如入隊、出隊、查看隊首元素、判斷隊列是否為空和獲取隊列大小。
要使用這個自定義隊列,您可以像下面這樣實例化一個對象并執行操作:
public static void main(String[] args) {
CustomQueue<Integer> queue = new CustomQueue<>();
queue.enqueue(1);
queue.enqueue(2);
queue.enqueue(3);
System.out.println("隊首元素: " + queue.peek()); // 輸出: 隊首元素: 1
System.out.println("出隊操作: " + queue.dequeue()); // 輸出: 出隊操作: 1
System.out.println("隊首元素: " + queue.peek()); // 輸出: 隊首元素: 2
System.out.println("隊列大小: " + queue.size()); // 輸出: 隊列大小: 2
}
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。