记清insertion sort 的方法
然后就是dummy!!!
public class Solution {
public ListNode insertionSortList(ListNode head) {
if ( head == null || head.next == null )
return head;
ListNode temp = head;
ListNode dummy = new ListNode(0);
dummy.next = head;
while ( temp.next != null ){
ListNode cur = temp.next;
if ( temp.val > temp.next.val){
ListNode node = dummy.next;
ListNode pre = dummy;
while ( node.val <= cur.val ){
node = node.next;
pre = pre.next;
}
temp.next = cur.next;
cur.next = node;
pre.next = cur;
}
else
temp = temp.next;
}
return dummy.next;
}
}

本文介绍了一种使用插入排序算法对链表进行排序的方法。通过创建一个虚拟头节点(dummy node)来简化插入过程,确保算法的正确性和简洁性。代码示例展示了如何比较并调整链表节点的位置以达到有序状态。

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



