0

我已经完成了 peekTop,这是常规的 peek 功能?窥视底部有什么区别?

我如何获得最后一个元素?

public E PeekTop() {
    if (isEmpty()) 
    System.out.print("stack is empty ");
    return top.getElement();
4

1 回答 1

0

正如jtahlborn所指出的,如果您的堆栈是通过单链表实现的,则您需要遍历整个链表才能检索堆栈底部的项目 - 即:

public E PeekBottom() {
    if (isEmpty()) {
        System.err.println("Stack is empty - no bottom");
        return null;
    }
    E stackItem = top;
    while (stackItem.hasNext())
        stackItem = stackItem.next();
    return stackItem.getElement();
}
于 2012-11-21T17:16:45.657 回答