節點類:
//節點類
class node
public node()
int value;
node next;
}
初始化鍊錶
//初始化乙個有序的單鏈表
public node initlist()
非遞迴的逆轉
//單鏈表逆轉,非遞迴
public node reverselist(node node)
//上乙個節點
node upper = null;
//當前節點
node cur = node.next;
//下乙個節點
node next = null;
while (null != cur)
//反轉結束後,upper引用指向原鍊錶的最後乙個節點,即反轉後的第乙個節點
node = upper;
return node;
}
遞迴的逆轉
public node reverse(node node)
列印鍊錶:
//列印單鏈表
public void printlist(node head)
system.out.println(str);
}
呼叫:
test t = new test();
node head = t.initlist();
system.out.println("逆轉前:");
t.printlist(head.next);
system.out.println("逆轉後:");
t.printlist(t.reverselist(head));
逆轉單鏈表
逆轉單鏈表 struct node reverse llist node head 此時temp表示以前的尾結點,p表示temp結點的前一結點 head temp 逆轉尾結點為頭結點 head next p 頭結點指標域指向p return head 逆轉迴圈鍊錶 struct node rever...
單鏈表逆轉
單鏈表逆轉 單鏈表逆轉,將單鏈表中各結點的next域改為指向其前驅結點。原先第乙個結點的next域為空,head改為指向原先的最後乙個結點。逆轉剛才如下圖所示 鍊錶類singlylist public class singlylist 構造單鏈表,由values陣列提供元素 public singl...
單鏈表逆轉
資料結構與演算法題目集 中文 list reverse list l 其中list結構定義如下 typedef struct node ptrtonode struct node typedef ptrtonode list 定義單鏈表型別 l是給定單鏈表,函式reverse要返回被逆轉後的鍊錶。i...