public
class
test
; node head =
create
(arr)
;show
(head);}
//逆序列印
public
static
void
show
(node head)
stack s =
newstack()
;//入棧
for(node p =head.next;p!=null;p=p.next)
//出棧
while
(!s.
empty()
)}//建立單鏈表
public
static node create
(int
arr)
return head;}}
class
node
}
public
class
test
; node head =
create
(arr)
;show
(head.next);}
//逆序列印
public
static
void
show
(node head)
show
(head.next)
;//對於每一層遞迴都是先列印後續部分再列印第乙個節點
system.out.
println
(head.val);}
//建立帶頭節點單鏈表
public
static node create
(int
arr)
return head;}}
class
node
}
public
class
test
; node head =
create
(arr)
;show
(head);}
//逆序列印
public
static
void
show
(node head)
reverse
(head)
;//列印後還原
}//反轉鍊錶
public
static node reverse
(node head)
node p = head.next;
head.next = null;
while
(p!=null)
return head;
}//建立單鏈表
public
static node create
(int
arr)
return head;}}
class
node
}
演算法 逆序列印鍊錶
輸入乙個鍊錶,按鍊錶從尾到頭的順序返回乙個 list 借助棧先入後出的特性,可以很輕鬆地實現 public arraylist printlistfromtailtohead listnode listnode arraylist list newarraylist while stack.isem...
鍊錶建立,單鏈表反轉,逆序列印等等
先來看普通鍊錶的 是如何建立的 首先需要乙個節點類,命名為node,這裡的屬性我設定的為public,如果有序要也可以設定為private,並提供響應的getter和setter方法即可 class node public node override public string tostring 有...
逆序列印單鏈表
二叉樹的操作 逆序列印單鏈表 void printslistfromtail2head pnode phead 逐個遍歷 每次從頭開始遍歷查詢到最後乙個要列印的元素 這個方法有點繁瑣,可以進行優化 void printslistfromtail2head pnode phead printf 逆序後...