单链表是最简单的数据结构,同时也是最常接触的数据结构,这个问题也很常见,通常这个问题我们有两种解决办法。
1.逆置单链表之后输出
这篇文章讲述了这样的过程
http://blog.csdn.net/dlutbrucezhang/article/details/11709633,但是这种方法不一定可行,因为这样改变了单链表原来的结构
2.利用栈的后进先出的思想,首先我们正序输出单链表中的每一个节点,在输出的过程中我们把这些节点存入栈中,之后,在从栈中输出,由此就可以得到倒序的单链表
不过,上述方法需要定义栈或者需要其他的存储空间,由此,我们可以联想到栈的原理,不再申请其他的空间,利用递归的思想输出
源代码如下: