1. 程式人生 > >Java單鏈表基本操作(四)--單鏈表反轉

Java單鏈表基本操作(四)--單鏈表反轉

單鏈表反轉是筆試面試中考察最多的演算法之一,是單鏈表裡必須要熟練掌握的演算法。

/** 
 * @author Gavenyeah
 * @date Start_Time:2016年4月1日 上午11:38:18 
 * @date End_Time:2016年4月1日 上午11:46:13 
 */
public class ReverseSingleList {
    public static void main(String args[]){
        Node head=ListNode.getSingleList();
        ListNode.printList(head);
        head=new
ReverseSingleList().reverseSingleList(head); ListNode.printList(head); } public Node reverseSingleList(Node head){ if(head== null||head. next== null){ return head; } Node preNode=head; Node pNode=head. next; Node markNode=head. next; head. next= null
; //一定要斷開head節點的next節點,不然形成了迴圈 while(markNode!= null){ markNode=markNode. next; pNode. next= preNode; preNode=pNode; pNode=markNode; } return preNode; } }