数组实现栈(Java)
来源:互联网 发布:美国博士申请 知乎 编辑:程序博客网 时间:2024/05/16 10:12
1.1. 栈的数据结构
栈是一种先进后出的数据结果,只能在一端(称为栈顶(top))对数据项进行插入和删除。
1.2. Java实现
StackTest
- package ch04;
- public class StackTest {
- public static void main(String[] args) {
- ArrayStack stack = new ArrayStack(10);
- System.out.println("isEmpty: "+stack.isEmpty());
- for(int i = 0;i<10;i++){
- stack.push(i);
- }
- System.out.println("isFull: "+stack.isFull());
- while(!stack.isEmpty()){
- System.out.println(stack.pop());
- }
- }
- }
- class ArrayStack{
- private int[] arrInt;//内置数组
- private int top;//栈顶指针
- public ArrayStack(int size){
- this.arrInt = new int[size];
- top = -1;
- }
- /**
- * 判断栈是否为空
- * @return
- */
- public boolean isEmpty(){
- return -1 == top;
- }
- /**
- * 判断栈是否已满
- * @return
- */
- public boolean isFull(){
- return arrInt.length -1 == top;
- }
- /**
- * 向栈顶插入一个元素
- * @param item
- */
- public void push(int item){
- if(isFull()){
- throw new RuntimeException("栈已满");
- }
- arrInt[++top] = item;
- }
- /**
- * 从栈顶取出一个元素
- * @return
- */
- public int pop(){
- if(isEmpty()){
- throw new RuntimeException("栈为空");
- }
- return arrInt[top--];
- }
- }
结果如下:
isEmpty: true
isFull: true
9
8
7
6
5
4
3
2
1
0
阅读全文
0 0
- (java)数组实现栈
- Java栈(数组实现)
- 数组实现栈(Java)
- java数组实现栈
- java数组实现栈
- java 数组实现栈
- Java数组实现栈
- 栈的数组实现(Java)
- java自定义栈(数组实现)
- java 用数组实现栈
- java实现栈(数组方式)
- Java用数组实现栈
- 数组实现动态栈,java
- Java数组实现自定义栈
- java用数组实现栈
- java自定义栈(数组实现)
- Java - - 数组实现栈基本功能
- 栈--数组存储--Java实现
- OpenGL
- ant工具中build配置文件
- android studio 复制项目
- Android中横向滑动(TabLayout+ViewPager)的实现
- 图片上传限制尺寸大小
- 数组实现栈(Java)
- android 修改了framework 资源文件后的编译方法
- 二维码的扫描和生成
- c# --- 泛型解决输入和输出类型不确定问题
- BZOJ-1036: [ZJOI2008]树的统计Count (树链剖分 线段树 单点修改 区间查询 入门题)
- 欢迎使用CSDN-markdown编辑器
- OKHttp使用的步骤:
- Hive学习--参数配置
- 基于FME的多尺度时空DLG坐标转换与分幅转换