導航:首頁 > 編程語言 > java單鏈表逆序

java單鏈表逆序

發布時間:2023-09-13 04:31:49

Ⅰ 用java來編寫一個單鏈表類的成員函數,實現對頭結點的單鏈表就地逆置的操作

逆置有兩種方法,第一是把所有節點反過來。還有一種就是改變節點中的值。
第一種情況,其實可以考慮用頭插法,來實現逆置。
下面的演算法是基於頭插法的思想,逆置鏈表的,僅供參考。
LinkList anti_linklist(LinkList demo)
{
LInkList *p,*q;//work pointer
LinkList head;
head=new LinkList();
head->next=null;//init head pointer
p=demo->head->next;//make p points to the first node
if(p==null)
return null;//the linklist is null
while(p!=null)
{
q=p;
q->next=head->next;
head->next=q;
p=p->next;
}
}

Ⅱ 設有一個表頭為first的單鏈表,式設計一個演算法,通過遍歷一趟鏈表,將鏈表中所有節點按逆序鏈接

演算法思想
一次遍歷鏈表,並將結點指針反轉,在逆置的時候要注意單鏈表兩端的處理(即表頭結點和表尾結點)
LinkList ReverseLinkList( LinkList L)
{
Lnode *p, *pre, *s;
p = L -> next;
s = p -> next;
p -> next = NULL;//處理第一個結點,指針指向NULL,因為逆置後它將是尾結點
while( s != NULL) //當s為空的時候說明p已經指向鏈表的最後節點了
{
pre = p;
p = s;
s = s ->next;
p -> next = pre; //指針反轉
}
L ->next = p; //處理最後一個結點,頭結點的指針指向它

return L;
}

閱讀全文

與java單鏈表逆序相關的資料

熱點內容
壓縮文件zip怎麼解壓不了 瀏覽:390
如何看蘋果appstore軟體是否收費 瀏覽:463
android發送字元串 瀏覽:13
python3最好的書籍推薦 瀏覽:684
藍牙模塊與單片機連接 瀏覽:665
mssql命令大全 瀏覽:193
mpv伺服器怎麼樣 瀏覽:599
伺服器遷移後怎麼恢復 瀏覽:249
在vfp中如何顯示和隱藏命令 瀏覽:283
如何部署地圖伺服器 瀏覽:737
安卓系統雲閃付哪個app好用 瀏覽:111
程序員一天完成幾個需求 瀏覽:960
請運行命令來卸載oracle 瀏覽:243
知識問答哪個app好 瀏覽:398
數控銑床編程代碼大全 瀏覽:869
程序員相親被罵 瀏覽:810
r6單片機 瀏覽:614
牛客編程題怎麼評分 瀏覽:189
希沃白板怎麼在安卓重置系統 瀏覽:845
python處理json過大 瀏覽:260