鍊錶部分反轉

2021-09-25 09:00:09 字數 573 閱讀 3650

反轉鍊錶的一部分,從第m個到第n個節點反轉,m、n都小於鍊錶長度。

public void reverselist(list l,int m,int n)

//定義乙個新的臨時頭指標

node tmp = node(0);

tmp.next = l;

//移動頭指標到第(m-1)個節點

node pre = tmp;

for(int i=0; i<(m - 1); i++)

node result = null;

//將當前節點指向第m個節點

node cur = pre.next;

node next = node(0);

//開始迴圈,反轉第m到n個節點

for(int j=0; j<(n - m + 1); j++)

//cur已經指向第(n+1)個節點

pre.next.next = cur;

//result指向第n個節點

pre.next = result;

return tmp.next;

}

反轉鍊錶和部分反轉

listnode reverselist listnode head if head next nullptr listnode p head listnode q p next listnode r nullptr p next nullptr while q return p 關鍵點 1.雖是三...

反轉部分單向鍊錶

給定乙個單向鍊錶的頭節點head,以及兩個整數from和to,在單項鍊表上把第from個節點到to個節點的這一部分進行反轉。例如 1 2 3 4 5 null from 2,to 4 調整結果為1 4 3 2 5 null 再如1 2 3 null from 1,to 3 調整結果為3 2 1 nu...

反轉部分單向鍊錶

說明 本文是左程雲老師所著的 程式設計師面試 指南 第二章中 反轉部分單向鍊錶 這一題目的c 復現。本文只包含問題描述 c 的實現以及簡單的思路,不包含解析說明,具體的問題解析請參考原書。感謝左程雲老師的支援。題目 給定乙個單向鍊錶的頭節點 head,以及兩個整數 from 和 to,在單向鍊錶上把...