乐趣区

关于程序员:算法题从尾到头打印链表

5

要求

工夫限度:1 秒 空间限度:32768K

题目形容

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

解题思路

链表必须要从头开始拜访,如果须要将打印程序颠倒,能够利用栈的个性。有时候办法就是这么简略 – –

如果想展现你的算法能力,能够写成递归 – 深度优先搜寻

代码

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

小弟才浅,如果本篇文章有任何谬误和倡议,欢送大家留言

感激大家的点赞、珍藏

微信搜「三年游戏人」第一工夫浏览最新内容,获取一份收集多年的书籍包 以及 优质工作内推

退出移动版