leetcode做题总结,题目Insertion Sort List 2013/11/12

来源:互联网 发布:硕鼠mac 下载打不开 编辑:程序博客网 时间:2024/06/05 18:33

非容器链表的插入排序,和数组不一样的是插入时指针要从前往后扫,而且注意的是除非没有插入操作,否则指针是不用前进的,因为把指针的next插入到了前面,所以又指向新的节点了。


public ListNode insertionSortList(ListNode head) {        if(head==null)return null;        ListNode start = new ListNode(0);        start.next=head;        ListNode p=head;        ListNode q;        ListNode tmp;        int cha=0;        while(p.next!=null){            tmp=p.next;            q=start;            cha=0;            while(q!=p){                if(q.next.val>=tmp.val){                    p.next=tmp.next;                    tmp.next=q.next;                    q.next=tmp;                    //p=p.next;                    cha=1;                    break;                }                q=q.next;            }            if(cha==0){                p=p.next;            }        }        return start.next;    }


0 0
原创粉丝点击