題目描述
輸入乙個鍊錶,反轉鍊錶後,輸出新鍊錶的表頭。
解題思路
當對乙個節點的next指標進行反轉時,會造成鍊錶的斷裂,需要儲存當前節點的next節點。
**實現:
/*
public class listnode
}*/public class solution
listnode newhead = null;
listnode pre = null;
listnode cur = head;
while(cur != null)
//當前節點的next指標指向前乙個節點
cur.next = pre;
//當前節點變為前半段鍊錶的最後乙個節點,也是下乙個節點需要指向的節點
pre = cur;
//後半段鍊錶的第乙個節點將會成為新的當前節點
cur = temp;
}return newhead;
}}
java實現鍊錶反轉
完整 及詳細的注釋如下 package com.dhasa.test company dhasa author dl public class linkedlistdemo class linkedlist public void sethead node head 內部類node author d...
反轉鍊錶Java
題目 定義乙個鍊錶,輸入乙個鍊錶的頭結點,反轉該鍊錶並輸出反轉後鍊錶的頭結點。思路 反轉鍊錶時,為了保證鍊錶不斷開,需要儲存三個引用,指向前一結點的引用,當前結點的引用,指向後一結點的引用。反轉鍊錶 public static listnode reverselist listnode head r...
Java反轉鍊錶
需要記錄原煉表中三個連續的結點 reverse first second。在每輪迭代中,從原煉表中提取結點first並將它插入到逆鍊錶的開頭。同時需要一直保持first指向原煉表中所有剩餘結點的首節點,second指向原煉表中所有剩餘結點的第二個結點,reverse指向結果鍊錶中的首結點。publi...