用兩個棧實現隊列,實現 appendTail(尾部插入)和 deleteHead(頭部刪除)。
appendTail
deleteHead
stack1
stack2
public class No7QueueWithTwoStacks { private static Stack stack1 = new Stack<>(); private static Stack stack2 = new Stack<>(); public static void appendTail(Object item) { stack1.push(item); System.out.println("壓入棧元素:" + item); } public static void deleteHead() { if (!stack2.empty()) { System.out.println("彈出棧元素:" + stack2.pop()); } else { if (stack1.empty()) throw new RuntimeException("隊列為空"); while (!stack1.empty()) { stack2.push(stack1.pop()); } deleteHead(); // 遞歸調用 } } public static void main(String[] args) { appendTail(1); appendTail(2); appendTail(3); deleteHead(); // 1 deleteHead(); // 2 appendTail(4); deleteHead(); // 3 appendTail(5); deleteHead(); // 4 deleteHead(); // 5 deleteHead(); // 異常 } }
在 Java 集合框架中,WeakHashMap 是一個極具
第三部分:MVCD 模型 — 為 Web 量身定制的 MVC
Druid 作為阿里巴巴開源的高性能資料庫連線池,內建強大的
前言:為什麼要在 Native 層呼叫 Java? 在 An