数据结构——顺序栈
来源:互联网 发布:linux 统计ip访问流量 编辑:程序博客网 时间:2024/06/05 16:17
本篇文章主要是用做代码分享。代码,注释都写得很清楚,不清楚的可以问我,如果有些不对的地方也可以提出来,以便我及时改正。
接口类
//未使用泛型的栈接口类public interface ISeqStack { boolean isEmpty(); //判空 boolean isFull(); //判满 boolean push(Object element); //入栈 Object pop(); //出栈 Object peek(); //查看栈顶元素 void display(); //遍历输出}
顺序栈类
//顺序栈类public class SeqStack implements ISeqStack { private Object data[]; //存储栈的数据元素 private int top = -1; //top为栈顶元素下标,默认值是-1,指向栈顶元素 //构造指定容量的空栈 public SeqStack(int capacity) { this.data = new Object[Math.abs(capacity)]; } //默认给50个容量 public SeqStack() { this(50); } @Override public boolean isEmpty() { // 判空 return top == -1; } @Override public boolean isFull() { // 判满 return top == data.length-1; } @Override public boolean push(Object element) { // 入栈 if(isFull() || element == null) return false; top++; data[top] = element; return true; } @Override public Object pop() { // 出栈,弹出栈顶元素 if(isEmpty()) return null; else return data[top--]; } @Override public Object peek() { // 查看栈顶元素,不移动栈顶指针 if(isEmpty()) return null; else return data[top]; } @Override public void display() { // 遍历输出 for(int i = 0; i <= top; i++) System.out.print(data[i].toString() + " "); System.out.println(); } }
测试类
import java.util.*;//测试顺序栈,判断回文串public class TestSeqStack01 { public static void main(String[] args){ SeqStack stack = new SeqStack(20); Scanner input = new Scanner(System.in); System.out.println("输入一串字母或数字,判断是否是回文串:"); String element = input.next(); for(int i = 0; i < element.length(); i++){ stack.push(element.charAt(i)); } String temp = ""; while(!stack.isEmpty()) { temp += stack.pop() + ""; } System.out.println(temp); if(element.equals(temp)) System.out.println("输入的字符串是回文串 "); else System.out.println("输入的字符串不是回文串 "); }}
阅读全文
0 0
- 数据结构——顺序栈
- 数据结构——顺序栈
- 数据结构——顺序栈
- 数据结构——顺序栈
- 数据结构—顺序串
- 数据结构—顺序表
- 数据结构——顺序栈,双向顺序栈,链栈
- 数据结构——栈之顺序栈
- 数据结构——栈(顺序栈)
- 数据结构实验三——顺序栈
- 数据结构与算法——顺序栈
- 数据结构——顺序栈(c++)
- 数据结构——顺序栈的学习
- 数据结构——栈的顺序存储
- 数据结构——栈之顺序存储
- 数据结构小结——顺序栈
- 数据结构—栈的顺序的实现
- 数据结构之共享栈(顺序存储)—改编《大话数据结构》
- [linux]:对于linux新手常用的20个命令
- 【WebService】WebService入门1
- 直接调用接口页面代码 或 页面调试接口
- kubernetes学习记录(3)——集群外部访问Pod或Service
- 查看sql数据库版本
- 数据结构——顺序栈
- 有没有职业规划的30岁,可以差出多少万年薪?
- luogu1049 【2001普及】装箱问题(dp)
- intellij 关闭自动保存和标志修改文件为星号
- 初试CSS-盒模型
- 复杂事件处理(Complex Event Processing)
- mysql一对多查询
- 用户模式 VS 内核模式(1)
- Thymeleaf赋值和取值