(LeetCode) 24。成对交换节点

  

给定一个链表,交换每两相邻节点,并返回它的头。例如,


<代码> 1 -> 2 -> 3 -> 4> 2 -> 1 -> 4 -> 3>

你的算法应该使用>/* *   *对单链表的定义。   * struct ListNode {   * int val;   * struct ListNode *下;   *};   */struct ListNode * swapPairs (struct ListNode *头)   {   如果(头==NULL | |头下==NULL) ->   {   返回头;   }      struct ListNode *列表=头;   struct ListNode * swapA=零;   struct ListNode * swapB=零;   而(列表!=NULL & &列表-> next !=NULL)   {   swapA=列表;   swapB=列表->下一个;=列表->下一步-> next;      int val=0;   val=swapA -> val;   swapA -> val=swapB -> val;   swapB -> val=val;   }      返回头;   }


(LeetCode) 24。成对交换节点