排序--直接插入排序算法

排序分析

待排数组:arr[9]={9,3,4,1,7,5,8,6,2}   

排后数组:newArr[9]=?

第一轮:从arr取出第一个元素放入newArr中,arr减去该元素。

    结果:arr={3,4,1,7,5,8,6,2} 、newArr={9}

第二轮:从arr取出第一个元素依次与newArr中元素对比,插入到正确的位置上,arr减去该元素。

    结果:arr={4,1,7,5,8,6,2} 、newArr={3,9}

第三轮:同上

    结果:arr={1,7,5,8,6,2} 、newArr={3,4,9}

.............................................................

.............................................................

.............................................................

第九轮:同上

    结果:arr={} 、newArr={1,2,3,4,5,6,7,8,9}

 

时间复杂度

O(N2)

 

posted @ 2017-02-27 11:02  无主之城  阅读(118)  评论(0编辑  收藏  举报