首页 > 其他 > 详细

链式栈(单向链表实现)

时间:2015-10-05 16:53:54      阅读:178      评论:0      收藏:0      [点我收藏+]

链式栈不需要考虑上溢出(overflow),但在存储时需要增加指针开销。

class ListNode {
    ListNode next;
    int val;
    public ListNode(int x) {
        val = x;
    }
}
public class Stack {
    private ListNode stack;
    public Stack() {
        stack = null;
    }
    public void clear() {
        stack = null;
    }
    public void push(int x) {
        ListNode tmp = new ListNode(x);
        tmp.next = stack;
        stack = tmp;
    }
    public int pop() throws Exception {
        if(isEmpty()) throw new Exception("underflow");
        else {
            int val = stack.val;
            stack = stack.next;
            return val;
        }
    }
    public int peek() throws Exception{
        if(isEmpty()) throw new Exception("underflow");
        else return stack.val;
    }
    public boolean isEmpty() {
        return stack == null;
    }
}

 

链式栈(单向链表实现)

原文:http://www.cnblogs.com/lasclocker/p/4855864.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!