LeetCode 25. Reverse Nodes in k-Group
来源:互联网 发布:战锤全面战争优化补丁 编辑:程序博客网 时间:2024/05/21 11:23
#include <iostream>#include <vector>using namespace std;struct ListNode { int val; ListNode* next; ListNode(int x) : val(x), next(NULL) {}};// set up a linked list and then reverse it in K-length group.ListNode* setUpLinkList() { ListNode* newHead = new ListNode(0); ListNode* current = newHead; for(int i = 1; i < 6; ++i) { ListNode* tmp = new ListNode(i); current->next = tmp; current = tmp; } return newHead;}void printList(ListNode* head) { ListNode* tmp = head; while(tmp) { cout << tmp->val << " "; tmp = tmp->next; } cout << endl;}ListNode* reverse(ListNode* prev, ListNode* end) { ListNode* last = prev->next; ListNode* curr = last->next; while(curr != end) { last->next = curr->next; curr->next = prev->next; prev->next = curr; curr = last->next; } return last;}// reverse the linklist in 3-length.ListNode* reverseKLength(ListNode* head, int k) { ListNode* dummy = new ListNode(0); dummy->next = head; int count = 0; ListNode* prev = dummy; while(head) { count++; if(count % k == 0) { prev = reverse(prev, head->next); head = prev->next; } else { head = head->next; } } return dummy->next;}int main(void) { ListNode* head = setUpLinkList(); printList(head); ListNode* tmp = reverseKLength(head, 3); printList(tmp);}
0 0
- [LeetCode]25.Reverse Nodes in k-Group
- LeetCode --- 25. Reverse Nodes in k-Group
- LeetCode 25.Reverse Nodes in k-Group
- [Leetcode] 25. Reverse Nodes in k-Group
- 【LeetCode】25.Reverse Nodes in k-Group
- [leetcode] 25.Reverse Nodes in k-Group
- Leetcode-25.Reverse Nodes in k-Group
- leetcode 25. Reverse Nodes in k-Group
- leetcode 25. Reverse Nodes in k-Group
- leetcode 25. Reverse Nodes in k-Group
- leetcode 25. Reverse Nodes in k-Group
- leetCode 25. Reverse Nodes in k-Group
- Leetcode 25. Reverse Nodes in k-Group
- leetcode:25. Reverse Nodes in k-Group
- LeetCode 25. Reverse Nodes in k-Group
- 【leetcode】25. Reverse Nodes in k-Group
- leetcode 25. Reverse Nodes in k-Group
- leetcode 25. Reverse Nodes in k-Group
- 由于扩展配置问题而无法提供您请求的页面。如果该页面是脚本,请添加处理程序。如果应下载文件,请添加MIME映射
- 是时候来了解一波Retrofit2了。
- CBATTRequest 学习笔记
- MFC Cbutton添加文本,获取文本
- [一起学Hive]之二–Hive函数大全-完整版
- LeetCode 25. Reverse Nodes in k-Group
- linux cat命令详解
- Objective-C的属性和成员变量用法及关系浅析
- VMware 虚拟机迁移
- Android开发记录
- c++第四次作业 继承和派生
- CBCharacteristic-CBMutableCharacteristic学习笔记
- Pyinstaller 打包 Tkinter 程序时引入图标解决方法
- Python-安装feedparser