Linked List Java



这是一个家庭作业问题,但不是真正的评分,只是一些在未来的项目中使用的东西。我有问题显示我在我的列表/节点。主要是在调用displayList时出现错误。

Merge将列表合并为一个包含列表1和列表2所有项的新列表。

Union只包含表1和表2中每个副本中的一个。

交集只包括来自列表1和列表2的重复项,不包括来自同一列表的重复项。

合并方法中的注释,我认为注释形式的代码只是当前代码的另一种形式。

//Kevin Clement
//Homework 2
   class LinkedListHomework
   {
      public static ListNode Merge(ListNode List1, ListNode List2)
      {
         ListNode head, tail;
         head = tail = new ListNode( "Hi1");
         while(List1 != null && List2 != null)
         {
            if(List1.getItem().toString().compareTo(List2.getItem().toString()) < 0)
            {
               tail.setNext(new ListNode(List1.getItem()));
               List1 = List1.getNext();
            }
            else
            {
               tail.setNext(new ListNode(List2.getItem()));
               List2 = List2.getNext();
            }
            tail = tail.getNext();
         }
      // while(List1 != null)
      // {
      // tail.setNext(new ListNode(List1.getItem()));
      // tail = tail.getNext();
      // List1 = List1.getNext();
      // }
      // 
      // while(List2 != null)
      // {
      // tail.setNext(new ListNode(List2.getItem()));
      // tail = tail.getNext();
      // List2 = List2.getNext();
      // }
         return head.getNext();

      }


   // public static ListNode Union(ListNode List1, ListNode List2)
   // {
   // 
   // 
   // 
   // }
   // // public static ListNode Intersection(ListNode List1, ListNode YList2)
   // {
   // 
   // }
      public void displayList()
      {
         ListNode temp = head;
         System.out.print("head");
         while(temp != null)
         {
            System.out.print("--> " + temp.getItem());
            temp = temp.getNext();
         }
         System.out.print("nn");
      }

      public static void main(String args[])
      {
         ListNode A = new ListNode("Adam", new ListNode("Andrew", new ListNode("Kyle", new ListNode("Luc", new ListNode("Michael", new ListNode("Tony"))))));
         ListNode B = new ListNode("Adam", new ListNode("Fallon", new ListNode("Jim", new ListNode("Kyle", new ListNode("Nina", new ListNode("Shea", new ListNode("Tony")))))));
         displayList(A);
         A.displayList();


      }
   }

好了,这就是我的错误,我觉得把它们抄下来比我解释错误更有帮助。

LinkedListHomework.java:61: cannot find symbol  
symbol  : variable head 
location: class LinkedListHomework  
         ListNode temp = head;  
                         ^  
LinkedListHomework.java:78: displayList() in LinkedListHomework cannot be applied to (ListNode)
         displayList(A);  
         ^  
LinkedListHomework.java:79: cannot find symbol  
symbol  : method displayList()  
location: class ListNode  
            A.displayList();  
             ^  
3 errors

第一个错误是ListNode temp = head;: head没有被声明。

第二个错误是因为你试图用参数调用displayList:它不接受参数。而且,它不是一个静态方法——它必须在对象上调用。

第三个错误是因为您试图在类ListNode的对象上调用displayList,而displayList实际上属于类LinkedListHomework

相关内容

  • 没有找到相关文章

最新更新