Java 单链表法在堆栈中的应用

Java 单链表法在堆栈中的应用,java,Java,我已经完成了窥视功能,这是正常的窥视功能?窥视底部的区别是什么 如何获取最后一个元素 public E PeekTop() { if (isEmpty()) System.out.print("stack is empty "); return top.getElement(); 如所述,如果堆栈是通过单个链接列表实现的,则需要遍历整个链接列表以检索堆栈底部的项,即: public E PeekBottom() { if (isEmpty()) {

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

如何获取最后一个元素

public E PeekTop() {
    if (isEmpty()) 
    System.out.print("stack is empty ");
    return top.getElement();
如所述,如果堆栈是通过单个链接列表实现的,则需要遍历整个链接列表以检索堆栈底部的项,即:

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();
}

如何获得下一个元素?重复,直到你到达终点…我想“窥视底部”会窥视链表的另一端。我会问给你作业的人他们的意思是什么。这样对吗?如果我这样做?public E peek bottom(){if(isEmpty())System.out.print(“堆栈为空”);而(top.getNext()!=null){E temp=top.getElement();return top.getElement();}}@jtahlborn不完全正确。至少您需要将
return
语句移到
while
循环之外。除此之外,我相信您需要删除
temp
变量-只需将
top
分配给它的元素-即
top=top.getElement()
而不是
e temp=top.getElement()