class Solution { public ListNode insertionSortList(ListNode head) { ListNode pre=new ListNode(0); ListNode p=head, q; while(p!=null) { q=pre; while(q.next!=null&&q.next.val<p.val) q=q.next; ListNode r=p; p=p.next; r.next=q.next; q.next=r; } return pre.next; } }