LeetCode题解:Swap Nodes in Pairs
2015-09-06 20:55
561 查看
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.
题意:给定一个链表,成对交换邻接的节点
解决思路:每次移动节点向前移动两位,然后交换就可以了
代码:
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.
题意:给定一个链表,成对交换邻接的节点
解决思路:每次移动节点向前移动两位,然后交换就可以了
代码:
public class Solution { public ListNode swapPairs(ListNode head) { ListNode newHead = new ListNode(0); newHead.next = head; for(ListNode curr = newHead; curr.next != null && curr.next.next != null; curr = curr.next.next){ curr.next = swap(curr.next, curr.next.next); } return newHead.next; } private ListNode swap(ListNode prev, ListNode after){ prev.next = after.next; after.next = prev; return after; } }
相关文章推荐
- node.js的"Cannot enqueue Handshake after invoking quit"错误
- hadoop2.x 如何解决NameNode单节点故障问题?
- Node.js 初窥
- Understanding nodejs
- nodeJS删除文件
- 用nodejs解析json数据
- Swap Nodes in Pairs
- LeetCode -- Delete Node in a Linked List
- org.w3c.dom.Node 转换成xml string
- [leetcode]51 Delete Node in a Linked List
- Node.js开发入门—使用对话框ngDialog
- [LeetCode#24]Swap Nodes in Pairs
- 学习nodejs之hello world
- 学习nodejs之restful
- NodeJS入门(五)—— process对象
- leetcode: (41) Populating Next Right Pointers in Each Node
- 基于nodejs实现js后端化处理
- Nodejs-模块-connect源码浅析
- nodejs websocket 事件中传递的参数不对导致nodejs崩溃
- ubuntu14安装node0.12.7