《数据结构》严蔚敏版(java解)——第三章 栈和队列02 链式栈操作
2017-02-14 16:07
447 查看
概念:链栈即采用链表作为存储结构实现的栈。
特点:当采用单链表存储线性表后,根据单链表的操作特性选择单链表的头部作为栈顶,此时,入栈、出栈等操作可以在Ο (1)内完成。
代码实现:
特点:当采用单链表存储线性表后,根据单链表的操作特性选择单链表的头部作为栈顶,此时,入栈、出栈等操作可以在Ο (1)内完成。
代码实现:
package csdn.wj.linear; import csdn.wj.assistant.Node; import csdn.wj.assistant.Stack; public class Stack02 implements Stack { private Node top; private int size; //链表首结点引用 //栈的大小 public Stack02() { top = null; size = 0; } //返回堆栈的大小 public int getSize() { return size; } //判断堆栈是否为空 public boolean isEmpty() { return size==0; } //数据元素 e入栈 public void push(Object e) { Node tmp = top; Node q = new Node((int)e); q.next = tmp; top = q; size++; } //栈顶元素出栈 public Object pop() throws StackEmptyException { if (size<1) throw new StackEmptyException("错误,堆栈为空。"); int obj = top.data; top = top.next; size--; return obj; } //取栈顶元素 public Object peek() throws StackEmptyException { if (size<1) throw new StackEmptyException("错误,堆栈为空。"); return top.data; } }
相关文章推荐
- 《数据结构》严蔚敏版(java解)——第三章 栈和队列04 链式队列操作
- 《数据结构》严蔚敏版(java解)——第三章 栈和队列03 顺序队列操作
- 《数据结构》严蔚敏版(java解)——第三章 栈和队列01 顺序栈操作
- 《数据结构》严蔚敏版(java解)——第二章 线性表02 顺序线性表操作
- 数据结构学习----链式队列(Java实现)
- 3-7-队列的链式存储-栈和队列-第3章-《数据结构》课本源码-严蔚敏吴伟民版
- 【数据结构+Java】Java实现简单队列、循环队列操作
- 数据结构-队列的链式存储实现操作
- 数据结构Java实现07----队列:顺序队列&顺序循环队列、链式队列、顺序优先队列
- 【数据结构】链式队列的基本操作
- 《数据结构》严蔚敏版(java解)——第二章 线性表05 双端链表操作
- PHP数据结构之七_队列的链式存储和队列的基本操作
- 【数据结构】 链式队列的一些操作
- 3-7-队列的链式存储-栈和队列-第3章-《数据结构》课本源码-严蔚敏吴伟民版
- 数据结构Java实现07----队列:顺序队列&顺序循环队列、链式队列、顺序优先队列
- 数据结构Java实现07----队列:顺序队列&顺序循环队列、链式队列、顺序优先队列
- 《数据结构》严蔚敏版(java解)——第二章 线性表01 基本操作
- 数据结构-链式队列的基本操作
- 数据结构Java实现07----队列:顺序队列&顺序循环队列、链式队列、顺序优先队列
- 数据结构之java实现链式队列(三)