为什么我的微信支付分801分高吗红包都是一两毛钱,身边朋友几块几十块都有?

这道题其实挺简单的不过为了拓宽思路,这里我来记录三个方法

?1 通过将其按照头插法插入另一个链表中然后顺序输出新链表值就行。这个也是我们的常规思路啦

//先倒序存到一个新的链表中然后输出

?2 由于是逆序,所以我们就很自然的想到用栈来实现啦,这里我借助的是顺序栈

//从尾到头反向输絀每个节点的值
//压入和弹出的时候top指针的先后顺序很重要的
 //采用尾插法,构建链表
 //则需要构建一个链表的尾指针
 pop(S); //pop是指向栈的前一个元素當他弹出时,他是直接减1然后弹出,所以直接S->top != S->base也可以弹出栈底部元素
 
 

?3 最简单的一种方法来啦,既然都想到用栈啦那就很自然想箌用递归来实现。即每当访问一个节点的时候先递归输出它后面的节点,在输出自身的节点这样链表就反向输出啦

我要回帖

更多关于 微信支付分801分高吗 的文章

 

随机推荐