FTPrep, 24 Swap Nodes in Pairs
来源:互联网 发布:ubuntu怎么删除目录 编辑:程序博客网 时间:2024/06/08 11:01
很简单一道题,平铺直述的做法就是按照list的数据结构来做。之后按照递归的做法做一下,受前面merge2List的递归的启发,充分挖掘list的深层的结构特点,也就是说list的处理一般都可以用递归,就看你能不能凑齐递归的三要素。
/** * 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) { if(head==null || head.next ==null) return head; ListNode dummy = new ListNode(0); dummy.next = head; ListNode curr= dummy; ListNode first, second; while(curr.next!=null&& curr.next.next!=null){ first = curr.next; second=first.next; first.next=second.next; second.next=first; curr.next=second; curr=first; } return dummy.next; }}以上代码:3 minutes bug-free
下面是递归代码,找出三要素,方法论是:处理好当前状态即可:
/** * 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) { if(head==null || head.next== null) return head; ListNode first=head; ListNode second=first.next; first.next=swapPairs(second.next); second.next=first; return second; }}果然代码更加容易了,就是只关心当面状态的处理,把未知的部分看成一个整体,这个整体就是要递归的部分,即调用自身函数的部分。
同样也是3min bug-free
阅读全文
0 0
- FTPrep, 24 Swap Nodes in Pairs
- [24]Swap Nodes in Pairs
- 24、Swap Nodes in Pairs
- 24 Swap Nodes in Pairs
- #24 Swap Nodes in Pairs
- 24 Swap Nodes in Pairs
- 24 - Swap Nodes in Pairs
- 24 Swap Nodes in Pairs
- [24]Swap Nodes in Pairs
- [24] Swap Nodes in Pairs
- 【24】Swap Nodes in Pairs
- 24-Swap Nodes In Pairs
- Swap Nodes in Pairs
- Swap Nodes in Pairs
- Swap Nodes in Pairs
- Swap Nodes in Pairs
- Swap Nodes In Pairs
- Swap Nodes in Pairs
- LeetCode中应用异或操作的几个题目
- ACM小白入门
- 德国创意ab
- 【Node.js-6】consolidate模板引擎集成、router路由介绍
- MUI框架Ajax获取数据然后在列表显示
- FTPrep, 24 Swap Nodes in Pairs
- 理解高并发(11).线程通信之_join使用及原理
- ios-json数据转模型
- cocos2dx mvc
- 百度之星度度熊保护村庄
- C++中的引用
- 创建型-抽象工厂模式(abstract factory)
- 制造业信息化的伴侣---Windows 2016超融合
- 理解高并发(12).限定并发个数_semaphore信号量