Given a linked list, swap every two adjacent nodes and return its head.
For example,Given 1->2->3->4, you should return the list as 2->1->4->3.
Your algorithm should use only constant space. You may not modify the values in the list, only nodes itself can be changed.
answer:
class Solution {public: ListNode* swapPairs(ListNode* head) { ListNode* first = head; ListNode* second ; if(first == NULL) return head; second = first->next; int temp; while(second != NULL){ temp = first->val; first->val = second->val; second->val = temp; first = (first->next)->next; if(first == NULL) return head; second = first->next; } return head; }};
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注