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

offer06从尾到头打印链表

作者: D_w | 来源:发表于2020-02-26 15:49 被阅读0次

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

解答思路 从大佬Jack Cui得到启发,python直接使用列表的插入方法,每次插入数据,只插入在首位。

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) #list.insert(index, obj),index是插入位置,obj为插入的元素,要求是按链表值插入,所以使用.val
                    listNode = listNode.next
              return result

java有点麻烦,首先先用链表接收所有数据,在接收时就可以选择顺序(addLast)还是逆序(addFirst),因为返回结果要以数组形式,再将链表中的数据都放入数组中,这里放数据的顺序要和上一步顺序相同,最后输出数组

import java.util.ArrayList;
import java.util.LinkedList;

/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode(int x) { val = x; }
 * }
 */
class Solution {
    public int[] reversePrint(ListNode head) {
        LinkedList<Integer> stack = new LinkedList<Integer>();
        while (head != null){
          stack.addLast(head.val);    //这里使用addfirst,下面就使用removefirst
          head = head.next;
        }
        int[] res = new int[stack.size()];
        for (int i = 0;i<res.length;i++){
            res[i] = stack.removeLast();
        }
    return res;
    }
}

相关文章

  • offer06从尾到头打印链表

    输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。 解答思路 从大佬Jack Cui得到启发,pyt...

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

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

  • 2.3.3 链表

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

  • 06:从尾到头打印链表

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

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

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

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

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

  • 从尾到头打印链表

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

  • 从尾到头打印链表

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

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

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

  • 剑指Offer -- 从尾到头打印链表(C++)

    题目描述 输入一个链表,从尾到头打印链表每个节点的值。 方法1:注意是从尾到头进行打印,可利用vector的头插法...

网友评论

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

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