//反转一个单链表 只需遍历一遍
public Node reverse () {
Node cur=this.head;//待反转的节点
Node prev=null;
Node newHead=null;
while(cur!=null){
Node curNext=cur.next;
if(curNext==null){
newHead=cur;
}
cur.next=prev;
prev=cur;
cur=curNext;
}
return newHead;
}
//采用头插法
public Node reverse1(){
Node cur=this.head;//待反转的节点
Node prev=null;
Node newHead=null;
while(cur!=null){
Node curNext=cur.next;
if(curNext==null){
newHead=cur;
}
cur.next=prev;
prev=cur;
cur=curNext;
}
return newHead;
}