java的直接插入排序代码

    xiaoxiao2021-04-13  25

    直接插入排序

    /** * 直接插入排序 * 保证第i个值前面的列表是拍好序的,然后从第i-1个值开始从后往前比较, * 如果如果队列中的值比较大就把队列中的值往后移一位,直到找到该值在队列中的合适位置 * @param a * @return */ void insertSort(){ int[] a = {49,38,65,97,76,13,27,49,78,34,12,64,5,4,62,99,98,54,56,17,18,23,34,15,35,25,53,51}; for(int i=1;i<a.length;i++){ int temp=a[i]; for(int j=i-1;j>=0;j--){ if(temp<a[j]){//队列中的值大,队列的值往后移 a[j+1]=a[j]; if(j==0){//队列中的第一个值也比该值大,则该值插入队列第一个位置 a[j]=temp; } break; } if(temp>=a[j]){//队列中的值小,该值插入这个位置的后面 a[j+1]=temp; break; } } } for(int i=0;i<a.length;i++){ System.out.print(a[i]+","); } }

    转载请注明原文地址: https://ju.6miu.com/read-668780.html

    最新回复(0)