博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LeeCode-Swap Nodes in Pairs
阅读量:6609 次
发布时间:2019-06-24

本文共 1182 字,大约阅读时间需要 3 分钟。

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.

1 /** 2  * Definition for singly-linked list. 3  * struct ListNode { 4  *     int val; 5  *     struct ListNode *next; 6  * }; 7  */ 8 struct ListNode* swapPairs(struct ListNode* head)  9 {10         struct ListNode *p=head,*q=head;11 12     int LiskLen=0;13 14     while(q!=NULL)15     {16         LiskLen++;17         q=q->next;18     }19     if(LiskLen%2==0)20     {21         while(p!=NULL)22         {23             int temp;24             temp=p->val;25             p->val=p->next->val;26             p->next->val=temp;27             28             p=p->next->next;29         }30     }31     else32     {33         while(p->next!=NULL)34         {35             int temp;36             temp=p->val;37             p->val=p->next->val;38             p->next->val=temp;39             40             p=p->next->next;41         }42     }43 44     return head;45 }

 

转载于:https://www.cnblogs.com/vpoet/p/4660512.html

你可能感兴趣的文章
Codeforces Round #257 (Div. 2) C. Jzzhu and Chocolate
查看>>
UVA 10177 Sqr/Rects/Cubes/Boxes?
查看>>
数学图形之锥体
查看>>
使用CoreData [2]
查看>>
OGRFeature的DestroyFeature方法
查看>>
(转)Inno Setup入门(三)——指定压缩方式
查看>>
jQuery与GridView控件结合示例
查看>>
SqlCommandBuilder的作用
查看>>
【JavaScript】一些注意点
查看>>
用pyinstaller把python代码打包成exe可执行文件
查看>>
Jexus web server V5.6.1正式公布
查看>>
优先级队列-堆实现
查看>>
Unity3D ogg下载并播放
查看>>
MemCached配置与缓存知识概述
查看>>
ASP.net--全局程序文件:Global.asax
查看>>
抽象类做函数参数问题
查看>>
深入探讨 java.lang.ref 包--转
查看>>
荷兰国旗问题
查看>>
微信怎样加入精准粉丝
查看>>
border-radius实例1
查看>>