关闭

剑指offer--从尾到头打印链表

标签: 剑指offer-java实现
232人阅读 评论(0) 收藏 举报
分类:

输入一个链表,从尾到头打印链表每个节点的值。


思路:
遍历整个链表,依次入栈。遍历结束后,再一次出栈即可。


代码如下:

import java.util.ArrayList;
import java.util.Stack;

class ListNode {
       int val;
        ListNode next = null;

        ListNode(int val) {
            this.val = val;
        }
    }

public class Solution {
    public ArrayList<Integer> printListFromTailToHead(ListNode listNode) {
        Stack<Integer> stack = new Stack<Integer>();
        ArrayList<Integer> list = new ArrayList<Integer>();
        while(listNode != null){
            stack.add(listNode.val);
            listNode = listNode.next;
        }

        while(!stack.isEmpty()){
            list.add(stack.pop());
        }

        return list;
    }
}
0
0
查看评论

剑指offer--python --c++--从尾到头打印链表

输入一个链表,从尾到头打印链表每个节点的值。 python解法:先将链表中的值插入到序列l中,之后再将序列逆置,则输出序列即可 def printListFromTailToHead(self, listNode): l=[] while listNode...
  • suanzhaogao
  • suanzhaogao
  • 2017-05-24 11:39
  • 506

JAVA实现从尾到头打印链表(《剑指offer》)

最近在刷《剑指offer》里的编程题,但是网上关于《剑指offer》的解答多半是C或者C++的,而且官方(作者)也是在用C++进行讲解,这里自己用java写了一些题目的解答代码(当然也有部分是借鉴了网上别人的解答的,出处未注明敬请之处请指出,侵删),希望能对大家的学习有所帮助。 题目描述: ...
  • qq_15062527
  • qq_15062527
  • 2015-10-01 15:14
  • 2418

从尾到头打印链表(java)

题目:输入一个链表的头结点,从尾到头反过来打印出每个结点的值。 通常打印是一个只读操作,我们不希望打印时修改内容。 接下来我们想到解决这个问题肯定要遍历链表。遍历的顺序是从头到尾的顺序,可输出的顺序却是从尾到头。也就是说第一个遍历到的结点最后一个输出,而最后一个遍历到的结点第一个输出。这就是典型...
  • u013238950
  • u013238950
  • 2016-03-03 10:17
  • 2079

Python :从尾到头打印链表

牛客网上的剑指 offer的在线编程: 题目描述: 输入一个链表,从尾到头打印链表每个节点的值 # -*- coding:utf-8 -*- # class ListNode: # def __init__(self, x): # self.val = x # ...
  • Lynette_bb
  • Lynette_bb
  • 2017-06-18 11:44
  • 660

从尾到头打印链表(Java)

题目:输入一个链表的头结点,从尾到头反过来打印出每个结点的值。**解析:很多人第一反应是从头到尾输出将会比较简单,于是自然想到把链表中连接结点的指针反转过来,改变链表的方向即可。但该方法会改变原来链表的结构,是否允许在打印链表的时候修改链表的结构,这点取决于面试官的需求。 **通常打印是一个只读操...
  • IDog149tao
  • IDog149tao
  • 2017-03-23 19:25
  • 288

C语言实现 从尾到头打印链表每个节点的值(链表学习 二)

#include #include #include #define LEN sizeof(struct Student) //初始化链表 struct Student{ long num; float score; struct Student *next; }; int ...
  • zpf_nevergiveup
  • zpf_nevergiveup
  • 2017-08-20 21:24
  • 297

java实现从尾到头打印链表每个节点的值

import java.util.ArrayList; class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; } } public class Solution_li...
  • pomay
  • pomay
  • 2017-05-11 11:57
  • 1018

剑指offer-Java-从尾到头打印链表

题目:输入一个链表的头结点,从尾到头反过来打印出每个结点的值。 方式1:非递归的实现 public class PrintListReverse{ public static void main (String args[]) { ListNode node1=new ListNode();...
  • zcl1359205840
  • zcl1359205840
  • 2016-08-26 14:47
  • 345

算法学习记录三(C++)--->从尾到头打印链表每个节点的值

描述 输入一个链表,从尾到头打印链表每个节点的值。 思路对于这种颠倒顺序的问题,我们应该就会想到栈,后进先出。所以,这一题要么自己使用栈,要么让系统使用栈,也就是递归。注意链表为空的情况。时间复杂度为O(n示例一 展示每个节点的逆序打印 (栈–>C)// 从尾到头打印链表,使用栈 void...
  • Deft_MKJing
  • Deft_MKJing
  • 2017-07-31 15:30
  • 461

【剑指offer】从尾到头打印单链表

题目描述: 输入一个链表,从尾到头打印链表每个节点的值。 输入: 每个输入文件仅包含一组测试样例。 每一组测试案例包含多行,每行一个大于0的整数,代表一个链表的节点。第一行是链表第一个节点的值,依次类推。当输入到-1时代表链表输入完毕。-1本身不属于链表。 输出: 对应每个测试案例,以从尾到头的顺序...
  • mmc_maodun
  • mmc_maodun
  • 2014-05-05 10:08
  • 3201
    个人资料
    • 访问:155739次
    • 积分:4932
    • 等级:
    • 排名:第6843名
    • 原创:329篇
    • 转载:0篇
    • 译文:0篇
    • 评论:81条
    博客专栏
    最新评论