Reverse Nodes in k-Group
来源:互联网 发布:python黑帽子中文下载 编辑:程序博客网 时间:2024/05/01 07:29
Given a linked list, reverse the nodes of a linked list k at a time and return its modified list.
k is a positive integer and is less than or equal to the length of the linked 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
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNode* reverseKGroup(ListNode* head, int k) { ListNode*p=head; int num=k-1; while(num--) { if(p==NULL) { return head; } p=p->next; } if(p==NULL)return head; ListNode*t=reverseKGroup(p->next,k); ListNode*q2=head->next; ListNode*q1=head; if(q1==p)return head; while(q2!=p) { ListNode*tmp=q2->next; q2->next=q1; q1=q2; q2=tmp; } p->next=q1; head->next=t; head=p; return head; }};
阅读全文
0 0
- Reverse Nodes in k-Group
- Reverse Nodes in K-Group
- Reverse Nodes in k-Group
- Reverse Nodes In K Group
- Reverse Nodes in k-Group
- Reverse Nodes in k-Group
- Reverse Nodes in k-Group
- Reverse Nodes in k-Group
- Reverse Nodes in k-Group
- Reverse Nodes in k-Group
- Reverse Nodes in k-Group
- Reverse Nodes in k-Group
- Reverse Nodes in k-Group
- Reverse Nodes in k-Group
- Reverse Nodes in k-Group
- Reverse Nodes in k-Group
- Reverse Nodes in k-Group
- Reverse Nodes in k-Group
- HashMap实现原理(阿里巴巴)
- Android 简单Fresco动画设置
- SharedPreferences的封装使用,让你的代码更优雅
- 文件上传与下载
- 数据的增删改查:单表查询,多表查询,集合查询和子查询
- Reverse Nodes in k-Group
- C# 使用path获取文件路径
- 每日一练(20171102)
- Microsoft HoloLens开发入门
- 2.读书笔记收获不止Oracle之 意识
- 【收集】常用的一些代码块<1>
- 编码
- HTTP网络请求状态码
- C#替换Word中的文本内容