美文网首页
5、从尾到头打印链表

5、从尾到头打印链表

作者: 小碧小琳 | 来源:发表于2018-10-02 10:35 被阅读0次

题目描述:
输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。

题目解释:不同于LeetCode的206题,翻转链表(改变链表结构,需要用两个指针,previous与cur来交替替换指针指向)。这道题只要求输出链表的值,如果不要求改变链表的结构,那么就不能用翻转链表然后从头到尾打印值得思路。

想到基于栈和循环的方式,来解决问题。(因为用到了栈,本质上也可以用递归,不过当链表比较长时,可能递归会比较深,因此用前面的思路比较好)。

# -*- 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
        #先构造一个结果列表res,每次的值append到res中
        # 用while保持循环,可以用cur来表示下一个节点,当cur不为空时,即可继续循环
        cur = listNode
        res = []
        while cur != None:
            res.append(cur.val)
            cur = cur.next
        #最终,再反转链表
        res.reverse()
        return res

相关文章

  • JZ-003-从尾到头打印链表

    从尾到头打印链表 题目描述 输入一个链表,按链表从尾到头的顺序返回一个ArrayList。题目链接: 从尾到头打印...

  • 2.3.3 链表

    面试题6:从尾到头打印链表 输入一个链表,从尾到头打印链表每个节点的值。

  • 06:从尾到头打印链表

    题目06:从尾到头打印链表 输入一个链表,从尾到头打印链表每个节点的值。 思路 一. 栈 从头遍历链表,先访问的后...

  • 《剑指offer》— JavaScript(3)从尾到头打印链表

    从尾到头打印链表 题目描述 输入一个链表,从尾到头打印链表每个节点的值。 实现代码 相关知识 链表是一种物理存储单...

  • <<剑指offer>>--javascript(3)-从尾到头打

    从尾到头打印链表 题目描述 输入一个链表,从尾到头打印链表每个节点的值 代码如下 解题思路 链表是一种物理存储单元...

  • 5、从尾到头打印链表

    题目描述:输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。 题目解释:不同于LeetCode的20...

  • 5 从尾到头打印链表

    输入一个链表的头结点,从尾到头打印出每个结点的值 结果

  • 从尾到头打印链表

    从尾到头打印链表 题目描述 输入一个链表,按链表从尾到头的顺序返回一个ArrayList。 分析 listNode...

  • 从尾到头打印链表

    《剑指offer》面试题6:从尾到头打印链表 题目:输入一个链表的头节点,从尾到头反过来打印出每个节点的值。(链表...

  • 《剑指Offer》链表考点题解

    题目链接:从尾到头打印链表 题目简述: 输入一个链表,按链表从尾到头的顺序返回一个ArrayList。 题目思路 ...

网友评论

      本文标题:5、从尾到头打印链表

      本文链接:https://www.haomeiwen.com/subject/feiooftx.html