24. Swap Nodes in Pairs

这里写图片描述

这道题是25题的简化版,只要两两调换下值就可以了

#include<stdio.h>
#include<stdlib.h>
struct ListNode {
    int val;
    struct ListNode *next;
};
typedef struct ListNode * Node;
struct ListNode* swapPairs(struct ListNode* head) 
{
    Node start,mid,end;
    int temp;
    if(NULL==head||NULL==head->next)
        return head;
    start=head;
    mid=start->next;
    while(mid)
    {
        end=mid->next;
        temp=start->val;//调换
        start->val=mid->val;
        mid->val=temp;
        if(!end)
            break;
        start=end;//指针向后移
        mid=start->next;
    }
    return head;
}
int main()
{
    Node L,p,q;
    int N,i,x;
    scanf("%d",&N);
    L=malloc(sizeof(struct ListNode));
    L->next=NULL;
    p=L;
    for(i=0;i<N;i++)
    {
        scanf("%d",&x);
        q=malloc(sizeof(struct ListNode));
        q->val=x;
        q->next=NULL;
        p->next=q;
        p=q;
    }
    L=swapPairs(L->next);
    while(L)
    {
        printf("%d ",L->val);
        L=L->next;
    }
    return 0;
}
阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u014376961/article/details/52368033
个人分类: leetcode
上一篇25. Reverse Nodes in k-Group
下一篇31. Next Permutation
想对作者说点什么? 我来说一句

SUSE上扩容Swap空间方法

2012年04月22日 91KB 下载

手机内置储存建立swap虚拟内存

2014年02月21日 2.71MB 下载

openwrt swap启用脚本

2013年02月26日 113B 下载

swap.js轮播小插件

2018年01月27日 12KB 下载

centos7配置swap交换内存空间

2017年11月08日 2KB 下载

搜索引擎发展趋势研究

2010年09月25日 3.53MB 下载

SwapMouse鼠标左右键自动切换

2013年11月21日 43KB 下载

swap交换函数

2015年07月07日 466B 下载

没有更多推荐了,返回首页

关闭
关闭