单个列表和列表节点之间有什么不同?

时间:2013-03-09 19:28:28

标签: java linked-list

public static SingleList copy(SingleList list1){
    SingleList list2 = new SingleList();
    ListNode current=list1.head;
    while (current != null){
        list2.addLast(current.getData());
        current=current.getNext();
    }
    return list2;
}

我不知道这个方法的功能甚至在计算机上如何工作甚至不知道节点和单个列表之间的区别!!

2 个答案:

答案 0 :(得分:0)

ListNode链接列表中的节点SingleList是一个链接列表

绘制一个类比 - 节点是链中的一个链接;链表本身就是链条。

答案 1 :(得分:0)

ListNode是链表中的一个节点,并且有一些代码可以更好地理解ListNode。

public class List
 {
     // return a linked list based on parameters list and soFar
     public static ListNode process(ListNode list, ListNode soFar)
     {
         if (list == null) {
             return soFar;
         }
         else {
             ListNode temp = list.getNext();
             list.setNext(soFar);
             return process(temp,list);
         }
      }

      // return a new linked list based on parameter n

      public static ListNode create(int n)
      {
        ListNode list = null;
        for(int k=1; k <= n; k++) {
            list = new ListNode(new String(""+k), list);
        }
        return list;
      }

      // print a linked list

      public static void print(ListNode list)
      {
        while (list != null) {
            System.out.print(list.getValue()+" ");
            list = list.getNext();
        }
        System.out.println();
      }
 }