1. 给一个链表,两两交换其中的节点,然后返回交换后的链表。
2.两两交换两个节点所存放的元素
3.通过的代码
/**
* Definition for singly-linked list.
* struct ListNode {
* int val;
* ListNode *next;
* ListNode(int x) : val(x), next(NULL) {}
* };
*/
class Solution {
public:
/**
* @param head a ListNode
* @return a ListNode
*/
ListNode* swapPairs(ListNode* head) {
// Write your code here
if(head==NULL){return head;}
ListNode *temp=head;
while(temp!=NULL&&temp->next!=NULL)
{
int m=temp->next->val;
temp->next->val=temp->val;
temp->val=m;
temp=temp->next->next;
}
return head;
}
};
4.感想
这个题比较简单.但即使是比较简单也耗费了我不少的时间,上课听老师讲的内容加上同学的知道,终于写出了这个代码,虽然大部分都不是自己的,但是总归还是把这个题看会了,再接再厉,加油。