【Leetcode】【python】Reverse Nodes in k-Group
来源:互联网 发布:js实现图片放大镜效果 编辑:程序博客网 时间:2024/06/05 14:10
题目大意
将一个链表中每k个数进行翻转,末尾不足k个的数不做变化。
解题思路
参考:
https://shenjie1993.gitbooks.io/leetcode-python/025%20Reverse%20Nodes%20in%20k-Group.html
A->B->C->D->E,现在我们要翻转BCD三个节点。进行以下几步:
1.C->B
2.D->C
3.B->E
4.A->D
5.返回及节点B
代码
class Solution(object): def reverseKGroup(self, head, k): """ :type head: ListNode :type k: int :rtype: ListNode """ if not head or k <= 1: return head dummy = ListNode(0) dummy.next = head current = dummy while current: current = self.reverseNextK(current, k) return dummy.next def reverseNextK(self, head, k): # Check if there are k nodes left current = head for i in range(k): if not current.next: return None current = current.next # The last node when the k nodes reversed node = head.next prev = head curr = head.next # Reverse k nodes for i in range(k): nextNode = curr.next curr.next = prev prev = curr curr = nextNode # Connect with head and tail node.next = curr head.next = prev return node
总结
太绕了
阅读全文
0 0
- 【Leetcode】【python】Reverse Nodes in k-Group
- LeetCode:Reverse Nodes in k-Group
- LeetCode: Reverse Nodes in k-Group
- LeetCode : Reverse Nodes in k-Group
- leetcode 42: Reverse Nodes in k-Group
- [Leetcode] reverse nodes in K-Group
- [LeetCode]Reverse Nodes in k-Group
- LeetCode-Reverse Nodes in k-Group
- LeetCode - Reverse Nodes in k-Group
- LeetCode | Reverse Nodes in k-Group
- 【leetcode】Reverse Nodes in k-Group
- Leetcode: Reverse Nodes in k-Group
- leetcode Reverse Nodes in k-Group
- [LeetCode] Reverse Nodes in k-Group
- LeetCode题解: Reverse Nodes in k-Group
- 【Leetcode】Reverse Nodes in k-Group
- LeetCode Reverse Nodes in k-Group
- [Leetcode] Reverse Nodes in k-Group (Java)
- codeforces Div#432 B Arpa and an exam about geometry(技巧)
- centos6.8安装Jdk1.8
- spring boot 集成shiro(用户授权和权限控制)
- windows命令方式操作防火墙
- 树莓派+FFmpeg——推送摄像头数据到RTMP服务器
- 【Leetcode】【python】Reverse Nodes in k-Group
- win10端口被占用如何查看
- mysql源码编译通过后,安装和启动mysql服务
- 笔记本热点设置
- 实现炮塔打兵
- 《嵌入式开发探秘》之第二章 开发环境搭建(3)
- mybatis中修改数据库单一数据时,连带清空其他数据的问题【动态sql】
- [初学笔记] matlab中怎么对一段代码加注释
- 【LeetCode】Maximum XOR of Two Numbers in an Array