用数组模拟栈
發(fā)布時間:2023/12/3
编程问答
18
豆豆
生活随笔
收集整理的這篇文章主要介紹了
用数组模拟栈
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
思路分析
代碼實現(xiàn)
package com
.atguigu
.stack
;import com
.sun
.org
.apache
.xml
.internal
.dtm
.ref
.sax2dtm
.SAX2DTM2
;import java
.net
.ServerSocket
;
import java
.util
.ArrayList
;
import java
.util
.Scanner
;
import java
.util
.Stack
;
public class ArrayStackDemo {public static void main(String
[] args
) {ArrayStack stack
= new ArrayStack(4);String key
="";boolean loop
=true;Scanner scanner
= new Scanner(System
.in
);while (loop
){System
.out
.println("show:表示顯示棧");System
.out
.println("exit:退出程序");System
.out
.println("push:表示添加數(shù)據(jù)到棧(入棧)");System
.out
.println("pop:表示從棧取出數(shù)據(jù)(出棧)");System
.out
.println("請輸入你的選擇");key
=scanner
.next();switch (key
){case "show":stack
.list();break;case "push":System
.out
.println("請輸入一個數(shù)");int value
=scanner
.nextInt();stack
.push(value
);break;case "pop":try {int res
=stack
.pop();System
.out
.println("出棧的數(shù)據(jù)是"+res
);}catch (Exception e
){System
.out
.println(e
.getMessage());}break;case "exit":scanner
.close();loop
=false;break;default:break;}}System
.out
.println("程序退出");}
}
class ArrayStack{private int maxSize
;private int[] stack
;private int top
=-1;public ArrayStack(int maxSize
){this.maxSize
=maxSize
;stack
=new int[this.maxSize
];}public boolean isFull(){return top
==maxSize
-1;}
歡迎分享!
轉載請說明來源于"生活随笔",并保留原作者的名字。
本文地址:用数组模拟栈