reverse a singly linked list.
對于非遞歸實作,思路是依次将從第二個結點到最後一個結點的後繼設為頭結點,然後将該節點設為頭結點(需記住将原頭結點的後繼設為空)。
對于遞歸實作,首先反轉從第二個結點到最後一個結點的連結清單,然後再将頭結點放到已反轉連結清單的最後,函數傳回新連結清單的頭結點。
c++測試代碼如下:
java測試代碼如下:
reverse a singly linked list.
對于非遞歸實作,思路是依次将從第二個結點到最後一個結點的後繼設為頭結點,然後将該節點設為頭結點(需記住将原頭結點的後繼設為空)。
對于遞歸實作,首先反轉從第二個結點到最後一個結點的連結清單,然後再将頭結點放到已反轉連結清單的最後,函數傳回新連結清單的頭結點。
c++測試代碼如下:
java測試代碼如下: