自己写的
@Data
@AllArgsConstructor
public class Node<T> {
private T t;
private Node next;
}
class Test{
public static void main(String[] args) {
Node node5 = new Node(5,null);
Node node4 = new Node(4,node5);
Node node3 = new Node(3,node4);
Node node2 = new Node(2,node3);
Node node1 = new Node(1,node2);
Node head = node1;
Node curNode = node1.getNext();
head.setNext(null);
while(curNode != null){
//System.out.println(head.getT().toString());
Node next = curNode.getNext();
curNode.setNext(head);
head = curNode;
curNode = next;
}
for(int i = 0; i < 5; i++){
System.out.println(head.getT().toString());
head = head.getNext();
}
}
}
网上的
public class NodeTest {
public static void main(String[] args) {
class Node {
String name;
int index;
Node next;
public Node(String name, int index) {
super();
this.name = name;
this.index = index;
}
}
Node a = new Node("a",1);
Node b = new Node("b",2);
Node c = new Node("c",3);
Node d = new Node("d",4);
Node e = new Node("e",5);
a.next = b;
b.next = c;
c.next = d;
d.next = e;
//关键代码开始
Node pre = null;
Node head = a;
Node next = head.next;
while(next != null){
head.next = pre;
pre = head;
head = next;
next = next.next;
}
head.next = pre;
//关键代码结束
//打印验证结果
while(head != next){
System.out.println("name==="+head.name);
head = head.next;
}
}
}