首先我们来讲讲什么是栈,主要是介绍我对栈的了解和认识:栈是一种用于存储数据的表,鲜明的特点是先进后出FILO,栈的实现分为数组实现和链表实现。学习栈看中学习栈的思想,通过栈的思想解决一些实际中的问题。Java中有Stack类实现栈的操作。这篇博客主要阐述,栈的基本实现,数组实现和链表实现。

一、栈的模型图

iOS培训,Swift培训,苹果开发培训,移动开发培训

入栈的顺序为:0、1、2、3、 4、 5、6   出栈的顺序为6、5、4、3、2、1、0

二、栈的数组实现

这个栈的实现是通过数组实现的,通过动态的扩充数组的长度来实现无界栈。

代码实现:

iOS培训,Swift培训,苹果开发培训,移动开发培训

 1 package Stack; 2  3 public class Stack1 { 4     private int stack[];//用于存储栈内元素的数组 5     private int DEFAULTSIZE=5;//默认初始化栈的存储空间 6     private int top;//栈顶指针 7     private int base;//栈底指针 8     private int nowSize;//栈当前的元素个数 9     private int&nb