您的位置:首页 > Web前端 > Node.js

Reverse Nodes in k-Group short and 24ms AC

2015-06-27 21:08 633 查看
class Solution {
public:
ListNode* reverseKGroup(ListNode* head, int k) {
<span style="white-space:pre">	</span>if (!head || k <= 0) return head;
int len = 0;
ListNode dummy(0), *iter = &dummy;
dummy.next = head;
while (head) {
++ len;
head = head->next;
}
int n = len / k;
while (n --) {
ListNode* groupTail = iter->next, *groupHead = iter, *next = iter->next;
int index = k;
while (index --) {
ListNode *tmp = next->next;
next->next = iter;
iter = next;
next = tmp;
}
groupTail->next = next;
groupHead->next = iter;
iter = groupTail;
}
return dummy.next;
}
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  leetcode c++