您的位置:首页 > 其它

leetcode+交换链表相邻元素,head指向一个元素,只需要交换相邻元素,链表结构不变

2018-01-18 00:47 351 查看
点击打开链接
#include<iostream>
#include<stdio.h>
#include<stdlib.h>
#include<string>
#include<cstring>
#include<string.h>
#include<math.h>
#include<algorithm>
#include<queue>
#include<vector>
#include<set>
#include<limits.h>
#include<assert.h>
#define LL long long
#define inf 0x3f3f3f3f
#define mod 1e9+7
using namespace std;
struct ListNode {
int val;
ListNode *next;
ListNode(int x) : val(x), next(NULL) {}
};
class Solution {
public:
ListNode* swapPairs(ListNode* head) {
if(head==NULL || head->next==NULL){
return head;
}
ListNode* curr=head->next;
ListNode* pre=head;//链表的第一个元素
int temp=0;
while(pre!=NULL&& curr!=NULL){
temp=curr->val;
curr->val=pre->val;
pre->val = temp;
if(curr->next==NULL){
curr=NULL;
pre=NULL;
}
else{
pre=curr->next; //指向下一组第一个
curr=curr->next->next; //指向下一组第二个
}
}
return head->next;
}
};
int main()
{
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐