Swap Nodes in Pairs
来源:互联网 发布:苹果手机录音软件 编辑:程序博客网 时间:2024/05/07 17:12
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.
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNode *swapPairs(ListNode *head) { // IMPORTANT: Please reset any member data you declared, as // the same Solution instance will be reused for each test case. ListNode **it = &head; while( (*it) && (*it)->next ){ ListNode *temp = (*it)->next; //保存下一个节点 (*it)->next = temp->next; //改变前一个节点的next temp->next = (*it); //改变后一个节点的next (*it) = temp; //改变前驱的next it = &(((*it)->next)->next); //it往后移动 } return head; }};
- 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
- TexturePacker中的offset
- wordpress搭建
- Objective-C Blocks学习
- 【编码随笔】了解C++11新特性
- C语言复习 随手写1
- Swap Nodes in Pairs
- 【Qt】常见问题总结 .
- 双十一自嘲
- 利用maven下载源码
- Mac 批量删除 .svn 文件
- B+树
- linux ion(android)
- jQuery 常用代码
- 代码清单3-3 ,objective-C