java - 尝试使用递归创建 removeLastElement

标签 java recursion linked-list

我需要创建一个方法,使用递归删除 LinkedList 的最后一个元素。 这是我到目前为止所拥有的,但它似乎并没有删除节点......当我调用 list.size() 它仍然具有相同的大小和相同的值。我在这里做错了什么? 顺便说一句,这是针对 Java 的

public void removeLastElement(Node curr){
        if (curr == null)
            return;
        else{
            if(curr.next == null)
                curr = null;
            else
                removeLastElement(curr.next);
        }

    }

最佳答案

在 LinkedList 中删除最后一个元素,你必须获取倒数第二个元素并设置

curr.next = null

关于java - 尝试使用递归创建 removeLastElement,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9696199/

相关文章:

java - 构建链表java

c - 反转循环双端队列 C 的顺序

algorithm - 跟进检测链表中的循环

java - Spring LDAP 和外部登录

javascript - javascript中递归的结果存储在哪里?

java - 使用 hibernate 保存具有引用依赖实体的实体

php - 如何递归地向每个数组添加键?

algorithm - 是否存在任何可用的种子 AI

java - 即使主线程执行完成,Java应用程序如何继续运行?

java - 算术运算符作为枚举?