43 leetcode - Rotate List
来源:互联网 发布:吉利汽车硕士待遇 知乎 编辑:程序博客网 时间:2024/05/29 13:19
#!/usr/bin/python# -*- coding: utf-8 -*-'''Rotate ListGiven a list, rotate the list to the right by k places, where k is non-negative.For example:Given 1->2->3->4->5->NULL and k = 2,return 4->5->1->2->3->NULL.Subscribe to see which companies asked this question将单链表循环右移k次,每次移动一个结点。'''# Definition for singly-linked list.class ListNode(object): def __init__(self, x): self.val = x self.next = Noneclass Solution(object): def rotateRight(self, head, k): """ :type head: ListNode :type k: int :rtype: ListNode """ if k < 1 or head == None: return head length = 1 end = head while end.next != None: end = end.next length += 1 k = k % length #循环右移length个等于没有移动 if k == 0: return head k = length - k start = head while k > 1: #寻找未右移截止点 start = start.next k -= 1 new_head = start.next#新的起点 start.next = None end.next = head #将两个链表链接起来 return new_headif __name__ == "__main__": s = Solution() a = ListNode(1) b = ListNode(2) d = ListNode(3) a.next = b b.next =d c = s.rotateRight(a,2) while c != None: print c.val c = c.next
0 0
- 43 leetcode - Rotate List
- [leetcode][list] Rotate List
- LeetCode: Rotate List
- LeetCode Rotate List
- LeetCode : Rotate List
- [Leetcode] Rotate List
- [LeetCode] Rotate List
- [leetcode] Rotate List
- leetcode 70: Rotate List
- [Leetcode] Rotate List
- 【leetcode】Rotate List
- [LeetCode]Rotate List
- [leetcode]Rotate List
- LeetCode-Rotate List
- [leetcode] Rotate List
- LeetCode - Rotate List
- LeetCode:Rotate List
- LeetCode 61: Rotate List
- 常用 Git 命令清单
- AFNetworking 的封装 Swift
- redis集群安装
- 自定义Dialog中一些style
- MyEclipse web项目导入Eclipse,详细说明
- 43 leetcode - Rotate List
- python判断类型并强制转换类型
- Red Hat Linux虚拟机安装VMWare Tools
- Mac 下 连接OpenVPN - Tunnelblick
- C语言--新建链表(个人程序记录)
- 导出样式
- 设置Linux环境变量的方法和区别
- 欢迎使用CSDN-markdown编辑器
- 对于互联网行业来说,年轻化互联网用户的五个特点