2 22逆序列印鍊錶

2021-10-04 04:07:59 字數 1585 閱讀 3454

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 逆序後...