leetcode: Swap Nodes in Pairs
2016-07-05 19:38
381 查看
Given a linked list, swap every two adjacent nodes and return its head.
For example,
Given
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.
* public class ListNode {
* int val;
* ListNode next;
* ListNode(int x) { val = x; }
* }
*/
public class Solution {
public ListNode swapPairs(ListNode head)
{
ListNode p=new ListNode(0);
ListNode p1,p2;
p.next=head;
while(p.next!=null&&p.next.next!=null)
{
p1=p.next;
p2=p.next.next;
p1.next=p2.next;
p2.next=p1;
if(p.next==head)
head=p2;
p.next=p2;
p=p1;
}
return 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.
* public class ListNode {
* int val;
* ListNode next;
* ListNode(int x) { val = x; }
* }
*/
public class Solution {
public ListNode swapPairs(ListNode head)
{
ListNode p=new ListNode(0);
ListNode p1,p2;
p.next=head;
while(p.next!=null&&p.next.next!=null)
{
p1=p.next;
p2=p.next.next;
p1.next=p2.next;
p2.next=p1;
if(p.next==head)
head=p2;
p.next=p2;
p=p1;
}
return head;
}
}
相关文章推荐
- Cassandra remove the offline node
- NodeJS学习三之API
- passwordless SSH connectivity not set up between the following nodes
- Hexo带过滤功能的首页插件
- nodejs实现群聊和私聊
- 黄聪:HtmlAgilityPack中SelectSingleNode的XPath和CSS选择器
- Vert.x 3.3 server.js失败的尝试(怎么就没NodeJS好使呢?)
- Swap Nodes & Reverse Nodes in k-Group
- Node.js实现文件上传
- 24. Swap Nodes in Pairs
- Node的关系型数据库ORM库:bookshelf
- nodejs系列学习:module-----(三)
- nodejs 遍历目录结构
- node.js 上传文件
- hadoop多次格式化后,导致datanode启动不了
- nodejs 的fs 的所有用法
- NodeJS制作爬虫全过程
- NodeJS制作爬虫全过程
- Nodejs爬虫进阶教程之异步并发控制
- Nodejs爬虫进阶教程之异步并发控制