/**
* 演示翻轉鍊錶的兩種典型實現,使用泛型。
* *@author shan
*@create 2016-09-01 11:46
*/public
class
reversesinglylist
nodenewhead = reverse(current.getnextnode());
current.getnextnode().setnextnode(current);
current.setnextnode(null);
return newhead;
}/**
* 迭代,將當前節點的下乙個節點快取後更改當前節點指標
*@param current
*@param
*@return
*/public
static
nodereverse2(nodecurrent)
nodepre = current;
nodecur = current.getnextnode();
while(cur != null)
current.setnextnode(null);
return pre;
}/**
* 順序列印煉表中的值
*@param current
*@param
*/public
static
void
printlist(nodecurrent)
system.out.println();
}@test
public
void
testreverse()
printlist(head);
nodenewhead = reverse(head);
printlist(newhead);
}@test
public
void
testreverse2()
printlist(head);
nodenewhead = reverse2(head);
printlist(newhead);
}}
反轉鍊錶 C語言實現
題目要求 在o n 的時間內反轉鍊錶,並返回反轉後鍊錶的頭指標。分析 求解鍊錶問題首先一定要考慮非空問題,而且要注意終止的位置。如圖所示,反轉的時候定義三個節點,pcur代表當前節點 pnext代表指向的下乙個節點 ppre代表前乙個節點。有了這三個節點就可以從前往後遍歷,而且保證鍊錶不會斷裂!in...
C語言實現的單向鍊錶
file gm slink.h brief 提供了常用的單向鍊錶操作介面 author don hao date 2011 8 21 9 38 03 version email hao.limin gmail.com company modification write modifications ...
單向迴圈鍊錶C語言實現
我們都知道,單向鍊錶最後指向為null,也就是為空,那單向迴圈鍊錶就是不指向為null了,指向頭節點,所以下面這個程式執行結果就是,你將會看到遍歷鍊錶的時候就是乙個死迴圈,因為它不指向為null,也是周而復始的執行。串成了乙個環型。include include typedef struct nod...