1、题目:https://www.nowcoder.com/practice/d0267f7f55b3412ba93bd35cfa8e8035?tpId=13&tqId=11156&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking

2、代码来源:https://www.nowcoder.com/questionTerminal/d0267f7f55b3412ba93bd35cfa8e8035

方法一:链表从尾到头输出,利用递归实现,不使用库函数直接printf输出的时候用递归比较好
代码:

链接:https://www.nowcoder.com/questionTerminal/d0267f7f55b3412ba93bd35cfa8e8035
来源:牛客网/**
*  struct ListNode {
*        int val;
*        struct ListNode *next;
*        ListNode(int x) :
*              val(x), next(NULL) {
*        }
*  };
*/
class Solution {
public:vector<int> printListFromTailToHead(struct ListNode* head) {vector<int> value;if(head != NULL){value.insert(value.begin(),head->val);if(head->next != NULL){vector<int> tempVec = printListFromTailToHead(head->next);if(tempVec.size()>0)value.insert(value.begin(),tempVec.begin(),tempVec.end());  }         }return value;}
};

方法二:用库函数,每次扫描一个节点,将该结点数据存入vector中,如果该节点有下一节点,将下一节点数据直接插入vector最前面,直至遍历完,或者直接加在最后,最后调用reverse
代码:

链接:https://www.nowcoder.com/questionTerminal/d0267f7f55b3412ba93bd35cfa8e8035
来源:牛客网/**
*  struct ListNode {
*        int val;
*        struct ListNode *next;
*        ListNode(int x) :
*              val(x), next(NULL) {
*        }
*  };
*/
class Solution {
public:vector<int> printListFromTailToHead(struct ListNode* head) {vector<int> value;if(head != NULL){value.insert(value.begin(),head->val);while(head->next != NULL){value.insert(value.begin(),head->next->val);head = head->next;}         }return value;}
};

《剑指offer》面试题5———从尾到头打印链表(C++ 实现)相关推荐

  1. 剑指offer面试题[5]-从尾到头打印链表

    目描述 输入一个链表,从尾到头打印链表每个节点的值. /** *  struct ListNode { *        int val; *        struct ListNode *next ...

  2. 剑指Offer - 面试题6. 从尾到头打印链表(栈,递归,反转链表)

    文章目录 1. 题目 2. 解题 2.1 stack解题 2.2 递归 2.3 反转链表 1. 题目 输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回). 示例 1: 输入:head ...

  3. 剑指offer 面试题5—从尾到头打印链表

    题目: 输入一个链表的头结点,从尾到头反过来打印出每个结点的值. 考虑用栈 public void invertedList1(ListNode head) {if (head == null) {r ...

  4. 剑指offer面试题06. 从尾到头打印链表(辅助栈法)

    题目描述 输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回). 思路 详见链接 代码 class Solution:def reversePrint(self,head:ListNod ...

  5. 剑指Offer - 九度1511 - 从尾到头打印链表

    剑指Offer - 九度1511 - 从尾到头打印链表2013-11-29 21:08 题目描述: 输入一个链表,从尾到头打印链表每个节点的值. 输入: 每个输入文件仅包含一组测试样例. 每一组测试案 ...

  6. 剑指offer java版 test3—从尾到头打印链表

    标题:剑指offer java版 test3-从尾到头打印链表 题目:输入一个链表,按链表从尾到头的顺序返回一个ArrayList. 解答:知识不够全面,用ArrayList做的 但是看到大佬们还可以 ...

  7. 【剑指offer】登峰造极之从尾到头打印链表

    题目链接 从尾到头打印链表. 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 热度指数:1254529 题目描述 /** struct ListNode { i ...

  8. 剑指offer(C++)-JZ6:从尾到头打印链表(数据结构-链表)

    作者:翟天保Steven 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 题目描述: 输入一个链表的头节点,按链表从尾到头的顺序返回每个节点的值(用数组返回). 如输入{ ...

  9. 【剑指offer-Java版】05从尾到头打印链表

    从头到尾打印链表:递归实现比较简单 注意处理异常输入:如输入指针为空 处理边界条件等即可 public class _Q05 {public static void main(String[] arg ...

  10. 剑指offer——面试题60:把二叉树打印成多行

    剑指offer--面试题60:把二叉树打印成多行 Solution1: 20180911重做.经典题目.牢记做法! /* struct TreeNode {int val;struct TreeNod ...

最新文章

  1. fftw与matlab中的fft对比,基于FFTW的FFT和IFFT
  2. WPF: RenderTransform特效
  3. Ubuntu Server16.04 中文安装报错无法安装busybox-initramf
  4. 用漫画的方式理解共享锁和排他锁
  5. 【Auto.js】[zip压缩] 将文件夹压缩成zip包
  6. IoT开发精英实战营招募啦!速来报名!
  7. ECMAScript中基本类型和引用类型的值在复制变量值时的区别
  8. loss函数之SoftMarginLoss
  9. 原来PDF解密有这么多方法,你知道几个?
  10. ipv6服务器安装mysql_ipv6安装,教您ipv6安装方法
  11. 视频 | 皖南川藏线自驾游
  12. 高远球技术(羽毛球)
  13. CF1428F-Fruit Sequences
  14. Word里面最难删的东西,困扰了97.99%的职场人,实在是太烦人了
  15. 我的小游戏开发之路|腾讯TGideas周桂华(花叔)
  16. C#毕业设计——基于C#+asp.net+sqlserver的工作计划流程管理系统设计与实现(毕业论文+程序源码)——流程管理系统
  17. 六款好用的Mac最流行的开发工具,程序员必看~
  18. 云豹短视频app源码中关于php--thinkcmf配置语言包的说明
  19. 实时曲线 温湿度表_温湿度表
  20. php在线留言,PHP在线提交留言直接发到邮箱

热门文章

  1. python自定义规律绘制_ForMaiR - 自定义规则的邮件自动转发工具
  2. 宁波计算机程序32届初赛,25届宁波市中小学计算机程序设计竞赛初赛试题
  3. c语言整数转浮点数_浮点数的秘密
  4. 阿里代码规范pdf_看完阿里的代码规范,立马学会代码分层,再也不会被同事怼...
  5. Druid连接池jar包的下载 配置和简单使用
  6. javamall 3.0 mysql_Java数据类型与MySQL数据类型对照表
  7. 80字符带空格 段错误_简单错误记录
  8. Arcgis更换布局模板_小美AI触屏音箱评测 美的布局AloT的关键一环
  9. linux快速删除大文件rsync,(总结)Linux下使用rsync最快速删除海量文件的方法
  10. mysql中的编号怎么自动加_MySQL中实现ID编号自动增加的方法