【发布时间】:2016-04-07 08:32:55
【问题描述】:
我目前正在为考试而学习,我不太了解链表。我想知道是否有人可以向我解释几行代码。
class Node{
Node next, previous;
final int value;
Node(int v){
value = v;
}
}
public class Linked{
Node start = null, end = null;
// Add a node on the end
void append(int v){
Node n = new Node(v);
if (start == null){
start = end = n;
return;
}
end.next = n;
n.previous = end;
end = n;
}
// Add a node to the front
void prepend(int v){
Node n = new Node(v);
if (start == null){
end = start = n;
return;
}
n.next = start;
start.previous = n;
start = n;
}
}
我需要解释的行是 append 和 prepend 方法中的最后 3 行。 cmets 解释了每种方法的目的,但我不明白在这些代码行中实际做了什么。提前致谢。
【问题讨论】:
-
将列表保存在一起的链接被更改以反映当前状态。
标签: java linked-list