1class Solution {2public:3ListNode *partition(ListNode *head, int x) {4ListNode *left = new ListNode(0);5ListNode *right = new ListNode(0);67ListNode *leftTail = left;8ListNode *rightTail = right;910while (head != NULL) {11if (head->val < x) {12leftTail->next = head;13leftTail = leftTail->next;14} else {15rightTail->next = head;16rightTail = rightTail->next;17}18head = head->next;19}2021leftTail->next = right->next;22rightTail->next = NULL;2324return left->next;25}26};