• 剑指Offer(三):从尾到头打印链表


    一、前言

    刷题平台:牛客网

    二、题目

    输入一个链表,返回一个反序的链表

    1、思路

    通常,这种情况下,我们不希望修改原链表的结构。返回一个反序的链表,这就是经典的“后进先出”,我们可以使用栈实现这种顺序。每经过一个结点的时候,把该结点放到一个栈中。当遍历完整个链表后,再从栈顶开始逐个输出结点的值,给一个新的链表结构,这样链表就实现了反转。

    2、代码

    Python:

    直接使用列表的插入方法,每次插入数据,只插入在首位。

    # -*- 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
            result = []
            while listNode:
                result.insert(0, listNode.val)
                listNode = listNode.next
            return result
  • 相关阅读:
    python 2 和 python 3 的区别
    random模块、time模块、sys模块、os模块
    正则表达式
    生成器 推导式 生成器表达式
    免费的论文查重网站
    Django 13
    pycharm连接mysql出错解决方案
    前端 51
    前端 50
    前段 49
  • 原文地址:https://www.cnblogs.com/ceo-python/p/11729422.html
Copyright © 2020-2023  润新知