Java:从链接列表中删除所有元素

超人:

在Java中,如何在使用现有clear()方法的情况下删除链表中的所有元素此练习的灵感来自电话采访中收到的一个问题。

说我可以用C做到这一点

void DeleteAllElement( ListElement **head ) {  
    ListElement *deleteMe = *head;  
    while( deleteMe )  {  
        ListElement *next = deleteMe->next;  
        delete deleteMe;  
        deleteMe = next;  
    }  
    *head = NULL;  
}

谢谢

用户684934:

Java具有自动垃圾收集功能,因此您只需要将Head引用设置为null:

myList.headNode = null;

因此,假设我们有class LinkedList,它也有一个resetList函数...

public class LinkedList{
     private Node head;
     public Node find(Key k){ ... }
     public void add(Node n){ ... }
     ...
     public void reset(){ head = null;}
     public static void reset(LinkedList l){l.reset();}
}

如果我们不将head节点设为私有,则可以简单地执行我发布的第一个代码段。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章