题解 | #链表中的节点每k个一组翻转#

链表中的节点每k个一组翻转

http://www.nowcoder.com/practice/b49c3dc907814e9bbfa8437c251b028e

Stack,一个指针cur遍历整个链表,一个new head作为最后输出的结果链表表头,一个指针p作为k个结点内部遍历
cur!=null时,cur入栈,cur = cur.next,所以当k个结点入栈了,cur指向第k+1个结点。
当stack.size() == k,
栈非空时,
new had == null时,new head时第一个pop出的结点。new head非空,
p.next = s.pop();
p = p.next;
然后p.next = cur连接上链表下一部分
最后链表长度一开始就比k小的话,new head = 一开始头结点
返回new head

全部评论

相关推荐

在笔试的大西瓜很矫健:校招数分不用想了,这经历和学历都不够用,大厂更别想,初筛都过不了,说点不好听的小厂数分都进不去(小厂也是假数分),要两个对口实习+3个项目(或者3+2),而且要有含金量才能补一点你的学历劣势。 建议刷实习,社招找数分,校招看运气,能入行业就行,可以运营转数分
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务