博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Reverse Nodes in k-Group
阅读量:4881 次
发布时间:2019-06-11

本文共 1834 字,大约阅读时间需要 6 分钟。

https://oj.leetcode.com/problems/reverse-nodes-in-k-group/

Reverse Nodes in k-Group

Given a linked list, reverse the nodes of a linked list k at a time and return its modified list.

If the number of nodes is not a multiple of k then left-out nodes in the end should remain as it is.

You may not alter the values in the nodes, only nodes itself may be changed.

Only constant memory is allowed.

For example,

Given this linked list: 1->2->3->4->5

For k = 2, you should return: 2->1->4->3->5

For k = 3, you should return: 3->2->1->4->5

题目:k的倍数项反转,不足k倍数不变

1 # Definition for singly-linked list. 2 # class ListNode: 3 #     def __init__(self, x): 4 #         self.val = x 5 #         self.next = None 6  7 class Solution: 8     # @param {ListNode} head 9     # @param {integer} k10     # @return {ListNode}11     def reverse(self,start,end):12         newhead=ListNode(0);newhead.next=start13         while newhead.next!=end:                      #把start后面的数依次放到最前面,直到end出现在最前面(头结点后)为止,实现逆转14             temp=start.next; start.next=temp.next15             temp.next=newhead.next; newhead.next=temp #不能写temp.next=start,(1,2,3)-(2,1,3)可以(2,1,3)-(3,2,1)错误16         return [end,start]17     def reverseKGroup(self, head, k):18         if head==None: return None                    #漏掉19         nhead=ListNode(0); nhead.next=head20         start=nhead21         while start.next:22             end=start23             for i in range (k-1):                     #for i in range() 24                 end=end.next25                 if end.next==None:                    #if在for循环里,走一步一判断,若在k-1步及之前为空,则不足k倍数,不反转直接输出26                     return nhead.next27             res=self.reverse(start.next, end.next)28             start.next=res[0]29             start=res[1]30         return nhead.next

 

 

 

转载于:https://www.cnblogs.com/lzsjy421/p/4605840.html

你可能感兴趣的文章
改变 C/C++ 控制台程序的输出颜色和样式
查看>>
ADO constants include file for VBScript
查看>>
ExtJs4.2 RadioGroup CheckboxGroup
查看>>
InnoDB Undo Log
查看>>
在Application中集成Microsoft Translator服务之使用http获取服务
查看>>
flask页面中Head标签内容为空问题
查看>>
Centos7 Putty SSH密钥登录
查看>>
HDU 6330--Visual Cube(构造,计算)
查看>>
小说Symbian的签名
查看>>
Objective-C中ORM的运用:实体对象和字典的相互自动转换
查看>>
高级java面试宝典
查看>>
声明,本博客文章均为转载,只为学习,不为其他用途。感谢技术大牛的技术分享,让我少走弯路。...
查看>>
centos7.1下 Docker环境搭建
查看>>
c# 导出Excel
查看>>
Status: Checked in and viewable by authorized users 出现在sharepoint 2013 home 页面
查看>>
python数据预处理
查看>>
Python之路,Day21 - 常用算法学习
查看>>
Android安全-代码安全1-ProGuard混淆处理
查看>>
部署core
查看>>
mysql 时间设置
查看>>