做外贸网站渠道,免费的外链平台,西安做公司网站,wordpress order插件给定一个链表#xff0c;两两交换其中相邻的节点#xff0c;并返回交换后的链表。
你不能只是单纯的改变节点内部的值#xff0c;而是需要实际的进行节点交换。 输入#xff1a;head [1,2,3,4] 输出#xff1a;[2,1,4,3]
示例 2#xff1a;
输入#xff1a;head []…给定一个链表两两交换其中相邻的节点并返回交换后的链表。
你不能只是单纯的改变节点内部的值而是需要实际的进行节点交换。 输入head [1,2,3,4] 输出[2,1,4,3]
示例 2
输入head [] 输出[]
示例 3
输入head [1] 输出[1]
提示
链表中节点的数目在范围 [0, 100] 内
0 Node.val 100代码如下:
/*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode() : val(0), next(nullptr) {}* ListNode(int x) : val(x), next(nullptr) {}* ListNode(int x, ListNode *next) : val(x), next(next) {}* };*/
class Solution {
public:ListNode* swapPairs(ListNode* head) {if (headnullptr || head-nextnullptr) return head;ListNode*newhead head-next;head-next swapPairs(newhead-next);newhead-next head;return newhead;}
};