从尾到头打印链表

原创 2018年04月17日 15:54:22

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

/**
*  struct ListNode {
*        int val;
*        struct ListNode *next;
*        ListNode(int x) :
*              val(x), next(NULL) {
*        }
*  };
*/
class Solution {
public:
    vector<int> printListFromTailToHead(ListNode* head) {
    
        stack<ListNode*> nodes;
        vector<int> res;
        ListNode* p=head;
        while(p!=NULL)
        {
            nodes.push(p);
            p=p->next;
        }
        while(!nodes.empty())
        {
            p=nodes.top();
            res.push_back(p->val);
            //printf("%d\t",p->val);
            nodes.pop();
            
        }
        return res;
    }

};

或者

/**
*  struct ListNode {
*        int val;
*        struct ListNode *next;
*        ListNode(int x) :
*              val(x), next(NULL) {
*        }
*  };
*/
class Solution {
public:
    vector<int> printListFromTailToHead(ListNode* head) {
        vector<int> result;
        stack<int> node;
        ListNode *p=head;
        while(p)
        {
            node.push(p->val);
            p=p->next;
        }
        while (!node.empty())
        {
            int q;
            q=node.top();
            result.push_back(q);
            node.pop();
        }
        return result;
    }
};

从尾到头打印链表(java)

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

从尾到头打印链表(java)

1.问题描述 输入一个链表,从尾到头打印链表每个节点的值。 2.算法分析 方案一(非递归版):构造一个栈,将链表中所有元素存入栈中,然后使用该栈构造ArrayList 方案二(递归版):在顺序遍历链表...
  • tanjie_123
  • tanjie_123
  • 2016-10-31 16:05:22
  • 220

Python :从尾到头打印链表

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

从尾到头打印链表(Java)

题目:输入一个链表的头结点,从尾到头反过来打印出每个结点的值。**解析:很多人第一反应是从头到尾输出将会比较简单,于是自然想到把链表中连接结点的指针反转过来,改变链表的方向即可。但该方法会改变原来链表...
  • IDog149tao
  • IDog149tao
  • 2017-03-23 19:25:08
  • 468

剑指offer(C++)——从尾到头打印链表

题目描述 输入一个链表,从尾到头打印链表每个节点的值。 思路: (1)由于链表只能从头到尾进行遍历,于是我们就想如果能把链表的指针翻转过来,我们就可以实现从尾到头的输出了。但是这里有...
  • YF_Li123
  • YF_Li123
  • 2017-04-21 20:48:56
  • 459

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

题目:输入一个链表的头结点,从尾到头反过来打印出每个结点的值。 方式1:非递归的实现 public class PrintListReverse{ public static void main ...
  • zcl1359205840
  • zcl1359205840
  • 2016-08-26 14:47:29
  • 413

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

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

剑指offer: 从尾到头打印链表(链表)

题目: 题目描述 输入一个链表,从尾到头打印链表每个节点的值。返回新链表。 分析: 逆转链表,与栈顺序一致,可以用辅助栈解决这个问题。 代码: vect...
  • fengsser
  • fengsser
  • 2015-07-10 09:56:52
  • 1048

从尾到头打印链表每个节点的值。

题目描述:输入一个链表,从尾到头打印链表每个节点的值。 分析 (1):可以把链表倒转,然后从头到尾输出链表的值,但此时链表的结构会改变,不建议如此做。 (2):把链表的值从头到尾加入到栈中,输出栈...
  • liulian1
  • liulian1
  • 2016-03-11 10:50:04
  • 1451

剑指offer之从尾到头打印链表(Python)

输入一个链表,从尾到头打印链表每个节点的值。
  • u010636181
  • u010636181
  • 2017-10-14 20:32:02
  • 95
收藏助手
不良信息举报
您举报文章:从尾到头打印链表
举报原因:
原因补充:

(最多只允许输入30个字)