提供一种用栈实现的方法,用栈实现比单一循环虽然效率低但好在逻辑上更连贯,改成递归也更容易。整体思路为:从头开始遍历整个链表,将链表每k个节点存入栈中(只需入栈每组的头节点),不够k个则遍历结束对每组进行出栈进行翻转;由于栈有后进先出的特性,所以是从倒数第一组开始往前翻转的如果变量定义得当,从后往前翻转即可实现每组翻转后的自动连接,k=2时的翻转过程如图:分组过程:翻转过程: /**栈实现*/ class Solution { public: ListNode *reverseKGroup(ListNode *head, int k) { std::stack<ListNo...