【LeetCode算法练习(C++)】Swap Nodes in Pairs
来源:互联网 发布:盛大云梯 mac 编辑:程序博客网 时间:2024/06/06 09:05
题目:
Given a linked list, swap every two adjacent nodes and return its head.
For example,
Given 1->2->3->4, you should return the list as 2->1->4->3.
Your algorithm should use only constant space. You may not modify the values in the list, only nodes itself can be changed.
链接:Swap Nodes in Pairs
解法:增加头结点便于操作,循环中每次读入两个节点交换顺序。时间O(n)
class Solution {public: ListNode* swapPairs(ListNode* head) { ListNode* h = new ListNode(0); h->next = head; ListNode* p = h; while (p->next && p->next->next) { ListNode* p1 = p->next; ListNode* p2 = p1->next; ListNode* p3 = p2->next; p->next = p2; p2->next = p1; p1->next = p3; p = p1; } ListNode* tmp = h; h = h->next; delete(tmp); return h; }};
Runtime: 3 ms
阅读全文
0 0
- 【LeetCode算法练习(C++)】Swap Nodes in Pairs
- leetcode: Swap Nodes in Pairs (C++)
- 【LeetCode-24】Swap Nodes in Pairs(C++)
- 【C++】【LeetCode】24. Swap Nodes in Pairs
- Leetcode c语言-Swap Nodes in Pairs
- LeetCode(24) Swap Nodes in Pairs
- LeetCode (24)Swap Nodes in Pairs
- LeetCode:Swap Nodes in Pairs
- LeetCode: Swap Nodes in Pairs
- [Leetcode] Swap Nodes in Pairs
- LeetCode : Swap Nodes in Pairs
- [LeetCode] Swap Nodes in Pairs
- Leetcode: Swap nodes in pairs
- [LeetCode]Swap Nodes in Pairs
- [LeetCode]Swap Nodes in Pairs
- LeetCode-Swap Nodes in Pairs
- LeetCode - Swap Nodes in Pairs
- LeetCode | Swap Nodes in Pairs
- Android App的三种架构模式MVC,MVP和MVVM
- 使用zxing生成与解析二维码
- Codeforces 602D Lipshitz Sequence【思维+斜率单调栈】
- MyBatis的实现过程
- Tomcat服务器的安装配置图文教程
- 【LeetCode算法练习(C++)】Swap Nodes in Pairs
- 集合拆分
- 配置Linaro toolchain交叉编译工具
- kong API gateway(三):consumers
- sqlserver聚合非聚合索引
- Cesium 学习记录(3) 在地图上放置3D建筑模型
- AE IFeatureClass导出SHP文件
- Hello, World!我的房车编程生活,已经 150 天了
- Centos 创建用户、修改密码等操作