使用的链表相关定义及函数在:链表最小结构(C++版本)

递归版本:

void PrintListReversely_Recursively(ListNode* pHead)
{if (nullptr == pHead) return;if (pHead->pNext != nullptr) PrintListReversely_Recursively(pHead->pNext);std::cout << pHead->data << " ";
}

循环版本:

void PrintListReversely_Circularly(ListNode* pHead)
{if (nullptr == pHead) return;ListNode* pCurNode = nullptr;ListNode* pLastNode = nullptr;while (pLastNode != pHead){pCurNode = pHead;while (pCurNode->pNext != pLastNode) pCurNode = pCurNode->pNext;std::cout << pCurNode->data << " ";pLastNode = pCurNode; }
}

完成的调用示例如下:

#include "ListData.h"void PrintListReversely_Recursively(ListNode* pHead)
{if (nullptr == pHead) return;if (pHead->pNext != nullptr) PrintListReversely_Recursively(pHead->pNext);std::cout << pHead->data << " ";
}void PrintListReversely_Circularly(ListNode* pHead)
{if (nullptr == pHead) return;ListNode* pCurNode = nullptr;ListNode* pLastNode = nullptr;while (pLastNode != pHead){pCurNode = pHead;while (pCurNode->pNext != pLastNode) pCurNode = pCurNode->pNext;std::cout << pCurNode->data << " ";pLastNode = pCurNode; }
}void PrintListReversely(MyList myList)
{if (nullptr == myList.pHead) return;PrintListReversely_Recursively(myList.pHead); // 调用循环版本替换成PrintListReversely_Circularly
}int main()
{MyList myList;for (int idx = 1; idx <= 10; ++idx) InsertList(myList, idx);std::cout << "Print List: " << std::endl;PrintList(myList);std::cout << "Print List Reversely: " << std::endl;PrintListReversely(myList);ReleaseList(myList);
}

输出数据为:

Print List:
1 2 3 4 5 6 7 8 9 10
Print List Reversely:
10 9 8 7 6 5 4 3 2 1

05. 从尾到头打印链表(C++版本)相关推荐

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

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

  2. 剑指offer丨6 从尾到头打印链表(JavaScript版本)

    目录 题目: [JZ6 从尾到头打印链表](https://leetcode.cn/problems/cong-wei-dao-tou-da-yin-lian-biao-lcof/) 题解: 总结 题 ...

  3. 链表打印从尾到头打印链表

    在本文中,我们主要介绍链表打印的内容,自我感觉有个不错的建议和大家分享下 每日一道理 生命不是一篇"文摘",不接受平淡,只收藏精彩.她是一个完整的过程,是一个"连载&qu ...

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

    记录来自<剑指offer>的算法题目 链表应该是面试时被提及最频繁的数据结构,它的结构简单,由若干个结点连接成链状结构,其创建.插入结点.删除结点等操作都只需要20行左右的代码就能实现,其 ...

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

    题目:从尾到头打印链表 输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回). 示例 1: 输入:head = [1,3,2] 输出:[2,3,1] 限制: 0 <= 链表长度 & ...

  6. 【剑指Offer专题】链表系列:从尾到头打印链表、反转链表、回文链表、合并两个排序的链表(C++和Python实现)...

    关注上方"深度学习技术前沿",选择"星标公众号", 资源干货,第一时间送达! 剑指Offer(三):从尾到头打印链表 输入一个链表的头节点,从尾到头反过来返回每 ...

  7. 《LeetCode力扣练习》剑指 Offer 06. 从尾到头打印链表 Java

    <LeetCode力扣练习>剑指 Offer 06. 从尾到头打印链表 Java 一.资源 题目: 输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回). 示例 1: 输入: ...

  8. java从尾到头打印链表数据_Java编程实现从尾到头打印链表代码实例

    问题描述:输入一个链表的头结点,从尾巴到头反过来打印出每个结点的值. 首先定义链表结点 public class ListNode { int val; ListNode next = null; L ...

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

    最近在刷<剑指offer>里的编程题,但是网上关于<剑指offer>的解答多半是C或者C++的,而且官方(作者)也是在用C++进行讲解,这里自己用java写了一些题目的解答代码 ...

  10. 【剑指Offer】从尾到头打印链表

    剑指Offer 从尾到头打印链表 题目描述 解法1 实现代码 一点补充 题目描述 输入一个链表,按链表值从尾到头的顺序返回一个ArrayList. 解法1 这道题主要思路是while循环从头遍历整个列 ...

最新文章

  1. 彻底解决python打印结果省略号的问题显示宽度
  2. 学习CSS 不错网址
  3. 个人Wordpress站点设置Windows Live writer
  4. C++中的继承(二)
  5. 垃圾收集算法,垃圾收集器_为什么我不能关闭垃圾收集器?
  6. 用OKR拆解法,做产品规划
  7. pandas python groupby_Python Pandas与Groupby的条件和
  8. flutter 动画展开菜单_蒲公英 · JELLY技术周刊 Vol.34: 芜湖~ Flutter
  9. 建议收藏!早期人类驯服『图神经网络』的珍贵资料
  10. IntelliJ IDEA 12 中用 Maven + Jetty 来开发Web项目
  11. DE14 Interpretation of the Exceptional Case: Resonance
  12. 库 v10怎么安装_22000Pa强劲吸力加高续航,追觅V10无线吸尘器体验
  13. U-Boot在FL2440上移植(四)----支持网卡DM9000和烧写yaffs文件系统
  14. Python中简单的编程
  15. python 视频转场_Python 带你高效创作短视频,视频创作秀到飞起!!!
  16. 关于小米Ruby15.6笔记本驱动黑苹果博通蓝牙的补充
  17. xml和html的区别和联系
  18. 一米村长讲故事机器人_又一位主持人跑去给孩子讲故事,村长李锐推出有声故事品牌“村长讲故事”...
  19. 去哪查阅ISO国际标准?
  20. Spring启动,constructor,@PostConstruct,afterPropertiesSet,onApplicationEvent执行顺序 原创 2016年09月29日 11:39:2

热门文章

  1. 微信小程序中媒体api总结
  2. 1.2.4 List.contains方法——判断列表中是否包含指定元素
  3. SpringMVC是单例的
  4. Provisioning Services 7.8 入门系列教程之九 手动更新虚拟磁盘
  5. Memcached CAS协议 通过版本号,防止多线程修改错误
  6. apache php 搭建 nagios 平台
  7. 如何删除DNN网站中管理菜单中的一些项
  8. 1.LVS 安装简介
  9. 5.jenkins 自动部署
  10. 5.PSR-7: HTTP message interfaces