Reverse Nodes in k-Group
2015-07-08 19:20
513 查看
这道题目,我的解法思想与Swap Nodes in Pairs那道题基本上是一样的,只不过在翻转group内节点的时候,我使用了数组栈。我的代码如下:
ListNode* reverseKGroup(ListNode* head, int k) { int cnt = 0; // 计数 ListNode *sstack[k], *cursor; // 数组栈 ListNode dummy(0), *pre = &dummy, *p = head; // p为待翻转group的第一个节点 pre->next = head; // pre为p之前的节点 while (p) { cnt = k; cursor = p; for (int i=0; i<k; i++) { if (cursor == NULL) { return dummy.next; } sstack[i] = cursor; // group内节点入栈 cursor = cursor->next; } for (int i=k-1; i>=1; i--) { // 翻转group内各节点 sstack[i]->next = sstack[i-1]; } pre->next = sstack[k-1]; // 一些连接操作 p->next = cursor; pre = p; p = p->next; } return dummy.next; }
相关文章推荐
- Hbase出现ERROR: Can't get master address from ZooKeeper; znode data == null解决办法
- [leedcode 25] Reverse Nodes in k-Group
- 24. Swap Nodes in Pairs
- 用C++为nodejs 写组件,提高node处理效率
- SHUTDOWN_MSG: Shutting down NameNode at java.net.UnknownHostException
- Node.js的DES加解密和MD5加密
- 【nodejs】json value出现 undefined 将会无法解析 问题来了
- nodejs npm常用命令
- Node.js入门
- Node.js入门
- [leedcode 24] Swap Nodes in Pairs
- Remove Nth Node From End of List
- nodejs
- Count Complete Tree Nodes
- (转)heX——基于 HTML5 和 Node.JS 开发桌面应用
- (转)在Windows平台上安装Node.js及NPM模块管理
- 公司项目NODEJS实践0.3[ mongo / session ...]
- LeetCode Valid Parentheses Remove Nth Node From End of List
- [LeetCode] Remove Nth Node From End of List
- RCP: JDT 根据org.eclipse.jdt.core.IJavaElement对象获取org.eclipse.jdt.core.dom.ASTNode对象