1 class Solution { 2 public: 3 ListNode* partition(ListNode* head, int x) { 4 // ListNode *node1,* node2; 5 ListNode *node1,*node2; 6 ListNode *p1=node1 , *p2=node2 ; 7 while (head) { 8 if (head->val < x) 9 p1 = p1->next = head; 10 else 11 p2 = p2->next = head; 12 head = head->next; 13 } 14 p2->next = NULL; 15 p1->next = node2->next; 16 return node1->next; 17 } 18 19 };思路比较巧