Sort a linked list using insertion sort.
/**
* Definition for singly-linked list.
* public class ListNode {
* int val;
* ListNode next;
* ListNode(int x) {
* val = x;
* next = null;
* }
* }
*/
public class Solution {
public ListNode insertionSortList(ListNode head) {
ListNode node=head;
ListNode last=head;
int len=0;
while(node!=null){
last=node;
node=node.next;
len++;
}
for(int i=1;i<=len-1;i++)
{
node=head;
for(int j=1;j<=len-i-1;j++) node=node.next;
while(node!=last){
if(node.val>node.next.val){
int val=node.val;
node.val=node.next.val;
node.next.val=val;
}
node=node.next;
}
}
return head;
}
}
323

被折叠的 条评论
为什么被折叠?



