24. Swap Nodes in Pairs

原创 2015年07月08日 17:39:24

此道题目是关于链表操作的。在算法中,我们主要操作三个指针,分别为p, p->next以及pre。其中p和p->next指向待交换的两个节点。pre指向p前面的那个节点。在代码中还需要注意的一点是,我们添加了一个头结点,这样之后的操作会更加方便。代码如下:

 ListNode *swapPairs(ListNode *head) {
        ListNode tmphead(0); tmphead.next = head; // tmphead为临时添加的头结点
        ListNode *pre = &tmphead, *p = head;
        while(p && p->next) // p 和 p->next是待交换的两个节点,pre是p的前一个节点
        {
            pre->next = p->next;
            p->next = p->next->next;
            pre->next->next = p;
             
            pre = p;
            p = p->next;
        }
        return tmphead.next;
    }

24. Swap Nodes in Pairs [easy] (Python)

题目链接https://leetcode.com/problems/swap-nodes-in-pairs/题目原文 Given a linked list, swap every two adj...
  • coder_orz
  • coder_orz
  • 2016年05月29日 15:09
  • 950

LeetCode24. Swap Nodes in Pairs简单到一次性通过

Given a linked list, swap every two adjacent nodes and return its head. For example, Given 1->2-...
  • booirror
  • booirror
  • 2016年02月02日 21:01
  • 1500

24. Swap Nodes in Pairs -leetcode-java

今天一下午被这道题困惑好久,也是够笨呀。 Given a linked list, swap every two adjacent nodes and return its head. ...
  • hahawhyha
  • hahawhyha
  • 2016年05月26日 18:54
  • 592

[LeetCode] 024. Swap Nodes in Pairs (Medium) (C++/Python)

[LeetCode] 024. Swap Nodes in Pairs (Medium) (C++/Python)
  • hcbbt
  • hcbbt
  • 2015年03月05日 14:39
  • 1620

【LeetCode-24】Swap Nodes in Pairs(C++)

交换链表中每两个相邻的节点 不能改变节点的值 智能改变节点。 递归法: class Solution { public: ListNode* swapPairs(ListNode* head)...
  • liujiayu1015
  • liujiayu1015
  • 2016年08月08日 16:57
  • 123

Swap Nodes in Pairs -- LeetCode

原题链接: http://oj.leetcode.com/problems/swap-nodes-in-pairs/  这道题属于链表操作的题目,思路比较清晰,就是每次跳两个节点,后一个接到前面,前一...
  • linhuanmars
  • linhuanmars
  • 2014年02月26日 01:37
  • 12000

Leetcode_24_Swap Nodes in Pairs

本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/43302355 Given a linked li...
  • pistolove
  • pistolove
  • 2015年01月30日 07:37
  • 1297

LeetCode 24_Swap Nodes in Pairs

这几天真是忙的不可开交,主要是因为要学的东西太多了,本人又有完美主主义倾向,所以对于一些知识就非常浪费时间,这样做有点好处就是理解深刻,但缺点就是太费时间。话说回来,算法这种东西,是有必要深追究的,因...
  • cyfcsd
  • cyfcsd
  • 2015年11月13日 21:07
  • 298

LeetCode 24 Swap Nodes in Pairs(交换序列中的结点)(Linked List)

翻译给定一个链表,调换每两个相邻节点,并返回其头部。例如, 给定 1->2->3->4, 你应该返回的链表是 2->1->4->3。你的算法必须使用唯一不变的空间。你也不能修改列表中的值,只有节点本身...
  • NoMasp
  • NoMasp
  • 2015年11月12日 18:43
  • 4256

24. Swap Nodes in Pairs*

Given a linked list, swap every two adjacent nodes and return its head. For example, Given 1->2-...
  • alwaystry
  • alwaystry
  • 2017年01月08日 15:42
  • 73
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:24. Swap Nodes in Pairs
举报原因:
原因补充:

(最多只允许输入30个字)