输入一个连表的头结点,从尾到头反过来打印出每个结点的值。
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)
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。