1class Solution {2public ListNode partition(ListNode head, int x) {3ListNode left = new ListNode(0);4ListNode right = new ListNode(0);56ListNode leftTail = left;7ListNode rightTail = right;89while (head != null) {10if (head.val < x) {11leftTail.next = head;12leftTail = leftTail.next;13} else {14rightTail.next = head;15rightTail = rightTail.next;16}17head = head.next;18}1920leftTail.next = right.next;21rightTail.next = null;2223return left.next;24}25}