Offer 24 反轉鍊錶並輸出該頭節點

2021-10-11 01:51:52 字數 530 閱讀 4195

劍指offer 24:反轉鍊錶

定義乙個函式,輸入乙個鍊錶的頭節點,反轉該鍊錶並輸出反轉後鍊錶的頭節點.

示例 :

input:1->2->3->4->5->null

output:5->4->3->2->1->null

解題思路:

利用list容器便可以實現,已知節點head,演算法思路是宣告乙個空的節點result,

用臨時變數儲存head的下乙個節點,然後將當前節點的下乙個節點指向result的前乙個

節點,最後將前一節點後移,head節點後移

c++語言實現

#include #include #include using namespace std;

class solution

return ans;

}};int main(int argc,char* ar**));

cout

}

指 Offer24鍊錶 反轉鍊錶

題目 定義乙個函式,輸入乙個鍊錶的頭節點,反轉該鍊錶並輸出反轉後鍊錶的頭節點。示例 輸入 1 2 3 4 5 null 輸出 5 4 3 2 1 null 限制 0 節點個數 5000 注意 本題與主站 206 題相同 分析 反轉單鏈表主要是將指標反向,主要有兩種方式,迭代和遞迴。思路 1 遞迴 2...

劍指Offer 24 反轉鍊錶

定義乙個函式,輸入乙個鍊錶的頭節點,反轉該鍊錶並輸出反轉後鍊錶的頭節點。例 輸入 1 2 3 4 5 none 輸出 5 4 3 2 1 none 雙指標遍歷鍊錶,將當前節點的next設為前乙個節點。注意儲存當前節點的next來遍歷。時間複雜度 o n 空間複雜度 o 1 def reverse l...

劍指offer24 反轉鍊錶

定義乙個函式,輸入乙個鍊錶的頭結點,反轉該鍊錶並輸出反轉後鍊錶的頭結點。樣例 輸入 1 2 3 4 5 null 輸出 5 4 3 2 1 null思路 初始化乙個新的頭節點new head,然後用尾插法把原始鍊錶中的結點插入新的頭節點。最後return new head next.acwing 3...