概括

  • 限定仅在表尾进行插入和删除操作的线性表
  • LIFO(Last In First Out),后进先出
  • 基本操作:进栈(入栈/压栈)、出栈

image.png

实现

数组实现栈

  1. public static class MyStackList {
  2. int[] arr = new int[10];
  3. int size;
  4. public void insert(int data) {
  5. if (size == arr.length) {
  6. throw new IndexOutOfBoundsException("栈超出范围");
  7. }
  8. arr[size] = data;
  9. size++;
  10. }
  11. public int delete() {
  12. if (size == 0) {
  13. throw new IndexOutOfBoundsException("栈超出范围");
  14. }
  15. size--;
  16. int result = arr[size];
  17. arr[size] = 0;
  18. return result;
  19. }
  20. public void print() {
  21. System.out.println(Arrays.toString(arr));
  22. }
  23. }