数组的排序算法(冒泡排序,选择排序,插入排序)
数组的排序算法(冒泡排序,选择排序,插入排序)
有种下班别走 发表于2年前
数组的排序算法(冒泡排序,选择排序,插入排序)
  • 发表于 2年前
  • 阅读 719
  • 收藏 14
  • 点赞 0
  • 评论 0

腾讯云 十分钟定制你的第一个小程序>>>   

package j2se;

/**
 * Created by jingqing.zhou on 2015/6/16.
 * 数组排序算法
 */
public class inserSort {

   /**
    *冒泡排序
    */
    public static int[] bubbleSort(){
        int[] arr = {10,5,7,45,11,-6,2};
        for(int i=0;i<arr.length-1;i++){
            for(int j=0; j<arr.length-i-1;j++){
                if(arr[j]<arr[j+1]){
                    int temp;
                    temp=arr[j];
                    arr[j]=arr[j+1];
                    arr[j+1]=temp;
                }
            }
        }
        return arr;
    }

    /**
     * 插入排序
     * @return
     */
    public static int[] insertSort(){
        int[] arr = {10,5,7,45,11,-6,2};
        for(int i=1;i<arr.length;i++){
            int j=i;
            while (j>0&&j<arr.length){
                int temp ;
                if(arr[j]<arr[j-1]){
                    temp = arr[j-1];
                    arr[j-1] = arr[j];
                    arr[j]=temp;
                }
                j--;
            }
        }
        return arr;
    }

    /**
     * 直接选择排序
     * @return
     */
    public static int[] selectSort(){
        int[] arr = {10,5,7,45,11,-6,2};
        for(int i=0;i<arr.length-1;i++){
            int min = i ;//先假定最小值就为第一个
            for(int j=min+1;j<arr.length;j++){
                if(arr[j]<arr[min]){
                    min = j;
                }
            }
            int temp;
            temp = arr[i];
            arr[i] = arr[min];
            arr[min] = temp;
        }

        return arr;
    }

    public static void main(String[] args) {
        int[] a =insertSort();
        for(int i=0;i<a.length;i++){
            System.out.print(a[i] + ", ");
        }
        System.out.println();
        int[] b =selectSort();
        for(int i=0;i<b.length;i++){
            System.out.print(b[i] + ", ");
        }
        System.out.println();
        int[] c =bubbleSort();
        for(int i=0;i<c.length;i++){
            System.out.print(c[i] + ", ");
        }
    }
}


共有 人打赏支持
粉丝 4
博文 65
码字总数 15218
×
有种下班别走
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: