反轉鍊錶的一部分,從第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,在單向鍊錶上把...