stackqueue.java~11~
来自「提供了常用的JAVA技术的示例」· JAVA~11~ 代码 · 共 87 行
JAVA~11~
87 行
package StackQueue;import javax.swing.UIManager;import java.awt.*;class LinkedList{ // 定义 双向链表类 char data; LinkedList back; LinkedList forward;}interface Access{ // 存取操作的 接口 void put(char c); char get();}class Queue implements Access{ private LinkedList QHead=new LinkedList(); private LinkedList QRear=QHead; public void put(char c){ // 存 数 QRear.forward=new LinkedList(); QRear.forward.data=c; QRear.forward.back=QRear; QRear=QRear.forward; } public char get(){ // 取 数 if(QHead!=QRear){ QHead.forward.back=null; QHead=QHead.forward; return QHead.data; } else{ System.out.println("this queue is empty !"); return '\0'; } }}class Stack implements Access{ private LinkedList bottom=new LinkedList(); private LinkedList top=bottom; public void put(char c){ top.forward=new LinkedList(); top.forward.data=c; top.forward.back=top; top=top.forward; } public char get(){ if (top!=bottom){ char ch=top.data; top.back.forward=null; top=top.back; return ch; } else{ System.out.println("this stack is empty !"); return '\0'; } }}public class StackQueue { public static void main(String[] args) { char ch; Queue qu=new Queue(); Stack st=new Stack(); qu.put('1'); qu.put('2'); System.out.println("queue: "); if((ch=qu.get())!='\0') System.out.println(ch); if((ch=qu.get())!='\0') System.out.println(ch); if((ch=qu.get())!='\0') System.out.println(ch); System.out.println("stack: "); st.put('1'); st.put('2'); if((ch=st.get())!='\0') System.out.println(ch); if((ch=st.get())!='\0') System.out.println(ch); if((ch=st.get())!='\0') System.out.println(ch); }}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?