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;
}
我不知道这个方法的功能甚至在计算机上如何工作甚至不知道节点和单个列表之间的区别!!
答案 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();
}
}