java - 从调用链表中减去方法中传递的链表

标签 java methods linked-list

本质上,这个问题的作用是将一个链表作为参数,如果调用链表中存在相同的内容,则从调用链表中减去其内容。我必须这样做(所以不改变参数)。

例如:l1.subtractList(l2) 将从 l1 中减去 l2 的内容。

这里的问题是调用链表有 2 个相同的号码,并且该号码也在作为参数传递的链表中。我也只需删除它的一个实例。

我已经设法减去除重复数字之外的所有内容,但我不确定我做错了什么。请记住,这对我来说是一个非常新的主题,所以我可能偏离了基地。但我感谢您提供的任何和所有帮助。谢谢。

 public void subtractList(LinkedList list)
 {
     Node current = head;
     Node<Integer> temp = list.getFirst();
     Integer count = -1;

    while (current != null)
        if (current == temp){
            count++;
            list.listRemove(count);
            temp = list.getFirst();
         }
        else
       {  
        current = current.getNext();    
       }

}

最佳答案

什么是listRemove方法?为什么需要计数?只需遍历参数 list 并检查其元素 temp 是否存在于调用链表中。您将需要一个外循环遍历作为参数传递的列表,并需要一个内循环迭代调用列表以检查需要删除的元素的值,并在需要时将其删除

while(temp!=null)
{
while(current!=null){
  //Check if element exists in list
  //If yes, remove it from the calling list
}
//Repeat
temp = temp.getNext();
}

关于java - 从调用链表中减去方法中传递的链表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39890285/

相关文章:

java - 了解家庭作业

java - Solr 出现 OutOfMemoryError -> 巨大的 1Gb FieldCacheImpl$StringIndexCache

java - 冒泡排序法+里面的排列法

c++ - 链表: Inserting a node at the end

java - 反转链表后对指针的影响

java - 如何在dialog.open()之后阻止JFace对话框关闭

java - Java TreeMap 的遍历

php - 方法内的无效参数抛出异常

java - 有没有办法在另一个方法中使用一个方法的返回值?

c - 段错误,尽管代码从未执行?