すぐ下のこのメソッドは、n 個の要素を持つ双方向リンク リストを逆にします。これが実際にどのように機能するのかわかりません。コメントを追加しました。間違っている場合は修正してください。トラバースプロセスがどのように機能するかわかりません。
public void reverseDLL( ) {
Node temp=head; //swap head and tail
head=tail; // head now points to tail
tail=temp; //tail points to head
//traverse the list swapping prev and next fields of each node
Node p=head; //create a node and point to head
while(p!=null) //while p does not equal null
{ //swap prev and next of current node
temp=p.next; // p.next does that not equal null? confusing.
p.next=p.prev; //this line makes sense since you have to reverse the link
p.prev=temp; //having trouble visualizing this.
p=p.next;//advance current node which makes sense
}
}