当前位置: 首页 > 知识库问答 >
问题:

当添加到链表中时,两个看似相同的代码给出了截然不同的结果

姜锋
2023-03-14

我在这里试图添加一个节点到一个单一的链接列表

SinglyLinkedListNode s = new SinglyLinkedListNode(data);
  if(head == null){SinglyLinkedList a = new SinglyLinkedList();
  a.head = s;
  return a.head;}
  else{
      SinglyLinkedListNode a = head;
      while(head.next != null){
          head = head.next;}
        head.next = s;
        return a;
  }

这个有效,但如果我这么做-

 SinglyLinkedListNode s = new SinglyLinkedListNode(data);
  if(head == null){SinglyLinkedList a = new SinglyLinkedList();
  a.head = s;
  return a.head;}
  else{
      SinglyLinkedListNode a = head;
      while(head != null){
          head = head.next;}
        head = s;
        return a;
  }

有些人认为列表现在只包含一个节点

共有1个答案

姜博
2023-03-14

一步一步地调试应该很简单,我想这就是学习它的方法。。。尝试将断点放在while循环和下一行(将值直接分配给),并检查变量值(主要是F8键用于调试)。。。

 类似资料:
  • https://leetcode.com/problems/find-all-numbers-dispapered-in-an-array/discuss/93007/simple-java-in-place-sort-solution 你能查一下上面的链接吗? 我看不懂密码 然后,第一个只是简单地使用我们可以检查是不是值。 第二个, 它最终也是一样的东西,只是为了证明索引值=index+1。 但

  • 我在Cplex中使用Python API来解决一个线性编程问题。使用Cplex时,我的结果如下: 但随后我将LP prolem保存为LP文件,并再次使用Cplex进行求解,结果与第一个略有不同: 下面是我的功能:

  • 下面的代码通过使用特征向量作为容器或简单的C数组来实现相同的计算。它产生一个封闭的但不是位到位等效的结果。 最后的数学运算是。

  • 如何将一个流中的对象同时添加到两个不同的列表中 目前我正在做 要将流中的对象添加到linkedlist“resourceMemory”中,我还想同时将相同的对象添加到另一个列表中,但我找不到它的语法。是否可能,或者每个列表需要两份代码副本?

  • 为什么在添加相同的数字时输出不同? 输出为: 如果我交换值 我得到的输出为:<代码>15.7000000000001 如何获得相同的输出?

  • 我还将列表一中的和成员的每个哈希代码与列表二中成员的哈希代码进行了比较。而且没有区别。但是如果我比较完整列表的hashcode,就有区别了。我不知道为什么。我很无助。 也许有人能帮我。请提前向我致以最诚挚的问候和感谢。