题目:
实现一个函数,将栈内元素的顺序进行翻转。如果当前栈内元素顺序为:1,2,3,4,5. 在调用这个函数后顺序为:5,4,3,2,1.
要求:
只能使用递归函数来实现,不能使用其他的数据结构。
解答:
该函数需要将栈内的元素顺序进行反转, 并且只能使用递归来实现.
我们需要分为两部分来实现:
- 实现一个通过递归来获取当前栈内最后一个元素的函数, 并保证其他元素顺序不变
- 递归调用获取最后一个元素的函数直至栈为空, 此时获取的元素为栈内的第一个元素, 将其插入栈中, 然后将其他元素再写会栈内. 完成逆序.
|
|