首先編寫連結清單基本結構,通過連結清單定義棧的實作中,連結清單采用頭插法進行建立,具體代碼如下:
public class List {
int content;
List next;
public List(int content,List next){
this.content=content;
this.next=next;
}
public static List insert(List list,int context){
return new List(context,list);
}
}
接下來,定義棧結構
import java.util.Scanner;
public class Zhan {
List list;
public Zhan() {
this.list = null;
}
public void push(int context) {// 向棧中壓入元素
this.list = List.insert(this.list, context);
}
public int pull() {
if (this.list == null) {
System.out.println("棧為空");
return -;
} else {
return this.list.content;
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input= new Scanner(System.in);
String number=input.nextLine();
Zhan stack=new Zhan();
while(!number.equals("end")){
stack.push(Integer.parseInt(number));
number=input.nextLine();
}
input.close();
System.out.println("彈出棧中資料");
while(stack.list!=null){
System.out.println(stack.pull());
stack.list=stack.list.next;
}
}
}