/*
题目描述:单链表反转
*/
/*
定义节点类
*/
public class Node{
int val;
Node next;
public Node(int val,Node next){
this.val=val;
this.next=next;
}
}
/*
反转思路(迭代法):
0)定义now当前节点;
1)定义pre前一个节点;
2)定义next后一个节点;
3)now指针由next指向pre;
4)pre向后移动;
5)now向后移动;
*/
public Node reverse(Node node){
Node pre=null;
Node now=node;
while(now!=null){
Node next=now.next;
now.next=pre;
pre=now;
now=next;
}
return pre;
}