JZ3如何从尾到头打印链表

本篇文章为大家展示了JZ3如何从尾到头打印链表,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

宁乡ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联建站的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18982081108(备注:SSL证书合作)期待与您的合作!

从尾到头打印链表

题目:

输入一个链表,按链表从尾到头的顺序返回一个ArrayList。

核心代码

# -*- coding:utf-8 -*-
# class ListNode:
#     def __init__(self, x):
#         self.val = x
#         self.next = None

class Solution:
    # 返回从尾部到头部的列表值序列,例如[1,2,3]
    def printListFromTailToHead(self, listNode):
        # write code here
        l = list()
        while listNode:
            l.append(listNode.val)
            listNode = listNode.next
        l.reverse()
        return l

调试代码

# 输入一个链表,按链表从尾到头的顺序返回一个ArrayList。

# -*- coding:utf-8 -*-

'''
定义一个节点的类
'''
class ListNode:
    def __init__(self, x):
        # 指向节点的值
        self.val = x
        # 指向下一个节点
        self.next = None

# 工具类(传入节点,返回逆序列表)
class Solution:
    # 返回从尾部到头部的列表值序列,例如[1,2,3]
    def printListFromTailToHead(self, listNode):
        l = []
        # 判断节点是否存在,如果存在,将节点的值存入列表,并指向下一个节点
        while listNode:
            l.append(listNode.val)
            listNode = listNode.next
        l.reverse()
        return l

if __name__ == '__main__':
    # 实例化几个新节点,并赋初始值
    node1 = ListNode(1)
    node2 = ListNode(2)
    node3 = ListNode(3)
    # 建立列表间的指向关系
    node1.next = node2
    node2.next = node3
    # 实例化工具类
    solution = Solution()

    # 输出返回值
    a = solution.printListFromTailToHead(node1)
    print(a)

上述内容就是JZ3如何从尾到头打印链表,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注创新互联行业资讯频道。


本文标题:JZ3如何从尾到头打印链表
本文网址:http://azwzsj.com/article/piecod.html