您的位置:首页 > 其它

各种排序算法思想总结

2016-12-23 14:48 316 查看
1.选择排序

  每次都找到应该在该位置的数,然后把该数移动到它应该在的位置

  程序:

  public static void selectedSort(int[] a){

          int N=a.length;

          for(int i=0;i<N;i++){    //i变量表示某个位置

              for(int j=i+1;j<N;j++){

                 if(a[j]<a[i]){

                     int temp=a[i];

                     a[i]=a[j];

                     a[j]=temp;

                }

           }

      }

}

2.插入排序

  插入排序就是该数前面的数都已排好序,我们需要将该数插入这个序列的正确的位置上

  public static void insertSort(int[] a){

        for(int i=1;i<a.length;i++){

            int temp=a[i];  //保存待插入数

            int j=i;

            for(;j>0&&temp<a[j-1];j--){   //将该数与序列中的每一个数比较,如果该数比序列中的数小则将序列中的那个数后移一位

                a[j]=a[j-1];

            }

            a[j]=temp;  //将该数插入到正确位置上

        }

    }

3.希尔排序

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: