美文网首页
03_从头到尾打印链表【python】

03_从头到尾打印链表【python】

作者: NWPU_HaiboWu | 来源:发表于2019-08-11 16:47 被阅读0次

1.题目描述

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

2.思路

1.通过递归的方式来实现,递归正好与从尾到头契合
2.通过栈的思想来实现,创建一个数组,每次将元素存在数组的头
其次,要记得判断是否为空节点

3.实现

递归的方式

def printListFromTailToHead(self, listNode):
  if listNode is None:
    return []
  return self.printListFromTailToHead(listNode.next)+[listNode.val]

栈的方式

 def printListFromTailToHead(self, listNode):
        stack=[]
        if listNode == None:
            return []
        while listNode.next != None:
            stack.insert(0,listNode.val)
            listNode=listNode.next
        stack.insert(0,listNode.val)
        
        return stack

4.相关知识点

1.python构建链表,可以参考之前写的数据结构文章:单链表的实现
2.对于is 和==这两个操作符的理解

 """这里牵扯到用is/is not与==/!=的区别"""
        """在python中对象包含的三个基本要素,分别是:id(身份标识)、type(数据类型)和value(值)"""
        """is 比较的是id  ==比较的是value"""
        """只有数值型和字符串型的情况下,a is b才为True,当a和b是tuple,list,dict或set型时,a is b为False"""

相关文章

  • 03_从头到尾打印链表【python】

    1.题目描述 输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。 2.思路 1.通过递归的方式来实现...

  • 从头到尾打印链表

    ?环境:牛客的编译环境?语言:JavaScript☕️难点:忽视了链表的head里也可能会存储数据,其实head头...

  • 逆序打印单链表

    题目描述: 逆序打印单链表,要求不能改变链表结构。 思路分析: 由于单链表只能顺序遍历(从头到尾遍历)而不能逆向遍...

  • 从尾到头打印链表

    题目描述 输入一个链表,从尾到头打印链表每个节点的值。 栈实现 要解决这个问题,肯定要遍历链表,从头到尾遍历链表,...

  • 面试题6:从尾打印链表

    【题目描述】:输入一个链表,从尾到头打印链表每个节点的值。【解法】:第一想法从头到尾遍历链表,从栈来存储链表结点,...

  • 《剑指offer》(三)-从头到尾打印链表(java)

    从头到尾打印链表 题目描述 输入一个链表,按链表从尾到头的顺序返回一个ArrayList。 代码格式要求 解题一 ...

  • 练习3--从尾到头打印链表

    题目:输入一个链表,从尾到头打印链表每个节点的值。思路:链表的遍历是从头到尾,stack栈是先进后出,刚好满足需求...

  • (7)列表相关题目

    (1)从头到尾打印链表算法思路:1、递归;2、借助栈;代码见:https://github.com/yuanfuq...

  • 算法(3)从头到尾打印链表

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

  • 3. 从头到尾打印链表

    题目描述 输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。 一般是不破坏链表结构

网友评论

      本文标题:03_从头到尾打印链表【python】

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