輸入一個連表的頭結點,從尾到頭反過來打印出每個結點的值。
C#語言實現:
public static void PrintRev(LinkedList<int> lList)
{
Stack<int> stack = new Stack<int>();
foreach (int item in lList)
{
stack.Push(item);
}
while (stack.Count > 0)
{
Console.WriteLine(stack.Pop());
}
} Java語言實現:
private static void printRev(LinkedList<Integer> lLink) {
Stack<Integer> stack = new Stack<Integer>();
Iterator<Integer> it = lLink.iterator();
while(it.hasNext()){
stack.push(it.next());
}
while (!stack.isEmpty()) {
System.out.println(stack.pop());
}
} Python語言實現:
class Node(object): """ 單鏈表節點 """ def __init__(self, data=None, next=None): self.data = data self.next = next class LinkedList(object): def __init__(self, node=None): self.node = node def print_link_rev(self): """ 逆序打印鏈表 :return: """ lst = [] node = self.node while node: lst.append(node.data) node = node.next for data in sorted(lst, reverse=True): print(data)
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。