排序算法之插入排序(直接插入方式)

試著忘記壹切 提交于 2019-11-27 20:56:45

插入排序基本思想:

  插入排序,就是把一组乱序的数据,依次拿出一个,放入到一组已经排好序的数据中的正确的位置。又可以分为:①直接插入排序、②折半插入排序、③二路插入排序、④表插入排序、⑤希尔排序

一、直接插入排序

  1.基本思想:相对比较简单的一种排序方法,就是按照概念一步一步的操作,可以使用for循环实现       

        假设按照从小到大的顺序排序(1)从第二个数据(下标为1的数据)开始,一直到最后一个数据结束,每次取出一个数据。(2)比较第一步的数据和它前一个位置的数据,如果大于前一个位置的数据,         则交换两者。再开始和前面的数据依次比较,并和比它大的数据进行交换,因为前面的数据已经有序,则找到第一个比它小的数据后就退出。

 

       2.直接插入排序过程:

          3.java代码:

public int[] insertionSort(int[] array){
    for(int i = 0;i < array.length - 1;i++){
        for(int j = i + 1; j > 0;j--){
            if(array[j] < array[j - 1]){
                array[j] = array[j] ^ array[j - 1];
                array[j - 1] = array[j] ^ array[j -1];
                array[j] = array[j] ^ array[j - 1];
            }else{
                break;
            }
        }
    }
    return array;
}

  

 

 

 

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!