Swap Nodes in Pairs
来源:互联网 发布:网络大电影后期宣发 编辑:程序博客网 时间:2024/06/09 14:19
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.
Solutions:三个指针,开始的时候new一个节点,其next指向head,结束的时候delete掉。
class Solution {public: ListNode* swapPairs(ListNode* head) { if(head==NULL) {return head;}ListNode *prev=NULL;if(head->next==NULL)return head;ListNode *ret=new ListNode(0);prev=ret;prev->next=head;ListNode *p1=head, *p2=p1->next;while(1) {prev->next=p2;p1->next=p2->next;p2->next=p1;prev=p1;if(p1->next==NULL)break;p1=prev->next;if(p1->next==NULL)break;p2=p1->next;}prev=ret;ret=ret->next;delete prev;return ret; }};
0 0
- Swap Nodes in Pairs
- Swap Nodes in Pairs
- Swap Nodes in Pairs
- Swap Nodes in Pairs
- Swap Nodes In Pairs
- Swap Nodes in Pairs
- Swap Nodes in Pairs
- Swap Nodes in Pairs
- Swap Nodes in Pairs
- Swap Nodes in Pairs
- Swap Nodes in Pairs
- Swap Nodes in Pairs
- Swap Nodes in Pairs
- Swap Nodes in Pairs
- Swap Nodes in Pairs
- Swap Nodes in Pairs
- Swap Nodes in Pairs
- Swap Nodes in Pairs
- 线段树
- 【Android】进度条与线程之间的消息处理
- android dns解析
- 最小生成树
- SGU135 Drawing Lines
- Swap Nodes in Pairs
- NSSet和NSMutableSet
- iOS程序沙河路径
- 图形学复习1——图形学图形系统概述与对象表示
- 自定义控件——只能输入数字的文本框
- 什么是工程思维和产品思维
- iframe 同级调用
- CSS跑马灯
- 资料整合——阅读代码的工具&逆向生成uml图