初始資料結構——順序棧
阿新 • • 發佈:2018-12-14
棧是一種只允許在一端進行插入和刪除的線性表
後進先出(LIFO)表
棧的順序儲存
判空、入棧、出棧、取棧頂
public class MyStack { final int MAXSIZE = 10; //棧的最大元素數 private class SeqStack{ char[] data = new char[MAXSIZE]; int top; SeqStack() { top = -1; } } SeqStack s = new SeqStack(); //判空棧 public boolean isEmpty() { if(s.top == -1) return true; return false; } //入棧 public boolean push(char data) { if(s.top == MAXSIZE - 1) return false; //棧滿不能入棧 else { s.top++; s.data[s.top] = data; return true; } } //出棧 public boolean pop() { if(isEmpty() == true) return false; //棧空不能出棧 else { s.top--; return true; } } //取棧頂元素 public char getTop() { if(isEmpty() == true) return 0; else { return s.data[s.top]; } } }