day 39
題目描述
思路
遍歷鏈表,每一個點與值比較,比值小就繼續,比值大就放到鏈表尾部即可
/*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode() {}* ListNode(int val) { this.val = val; }* ListNode(int val, ListNode next) { this.val = val; this.next = next; }* }*/
class Solution {public ListNode partition(ListNode head, int x) {if(head==null){return null;}ListNode fakehead=new ListNode();fakehead.next=head;ListNode z=head;while(z.next!=null){z=z.next;}ListNode before=fakehead;ListNode y=head;ListNode end=z;while(y!=end){if(y.val>=x){z.next=y;before.next=y.next;y=y.next;z=z.next;z.next=null;}else{before=before.next;y=y.next;}}if(y.val>=x){z.next=y;before.next=y.next;y=y.next;z=z.next;z.next=null;}return fakehead.next;}
}