码迷,mamicode.com
首页 > 编程语言 > 详细

栈的Java实现

时间:2016-01-28 21:15:34      阅读:299      评论:0      收藏:0      [点我收藏+]

标签:

 1 public class Stack {
 2     private int maxSize=2;//栈容量,初始为2,(用于表达式求值,操作数栈)
 3     private int top=-1;//栈顶指针
 4     private int[] data=new int[maxSize];//数据
 5     //判空
 6     public boolean IsEmpty(){
 7         if(top==-1)
 8             return true;
 9         else
10             return false;
11     }
12     //判满
13     public boolean IsFull(){
14         if(top==maxSize-1)
15             return true;
16         else
17             return false;
18     }
19     //圧栈
20     public boolean Push(int elem){
21         if(IsFull())
22             return false;
23         else{
24             data[++top]=elem;
25             return true;
26         }
27     }
28     //出栈
29     public int Pop(){
30         if(IsEmpty()){
31             return -65535;
32         }
33         else{
34             return data[top--];
35         }
36     }
37 }

总结:

  1. 类成员变量要赋初值(习惯)
  2. maxSize在C++中使用了宏定义,在Java中数组不需要预先设定长度,但一旦设定也无法更改,待改进(使用静态变量)
  3. 线性栈,via2015冬考研

栈的Java实现

标签:

原文地址:http://www.cnblogs.com/jinfengxie/p/5167350.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!