zoukankan      html  css  js  c++  java
  • java-实现两种排序方法

    /*
    对给定数组进行排序
    {5,7,2,8,9,1,3,4}

    */
    class ArrayTest2
    {
    /*
    选择排序
    内循环结束一次,最值出现在头角标位置上
    */
    public static void SelectSort(int[] arr)
    {
    for(int x=0;x<arr.length-1;x++)
    {
    for(int y=1+x;y<arr.length;y++)
    {
    if(arr[x]>arr[y])
    {
    /*
    int temp=arr[x];
    arr[x]=arr[y];
    arr[y]=temp;
    */
    swap(arr,x,y);//java中已经定义好的一种排序方式,开发中,要使用该句代码。
    }

    }
    }
    }
    /*
    冒泡排序
    */
    public static void bubbleSort(int[] arr)
    {
    for(int x=0;x<arr.length-1;x++)
    {
    for(int y=0;y<arr.length-x-1;y++)//-x:让每一次比较的元素减少,-1:避免角标越界。
    {
    if(arr[y]<arr[y+1]) 
    {
    /*
    int temp=arr[y];
    arr[y]=arr[y+1];
    arr[y+1]=temp;
    */
    swap(arr,y,y+1);
    }
    }
    }

    }
    /*
    发现无论什么排序,都需要对满足条件的元素进行位置互换。
    所以可以把这部分相同的代码提取出来,单独封装成一个函数。
    */
    public static void swap(int[] arr,int a,int b)
    {
    int temp=arr[a];
    arr[a]=arr[b];
    arr[b]=temp;
    }
    public static void main(String[] args)
    {
    int[] arr={5,7,2,8,9,1,3,4}; 
    //排序前
    printArray(arr);
    //排序s
    //SelectSort(arr);
    //排序后 
    bubbleSort(arr);
    printArray(arr);
    }
    public static void printArray(int[] arr)
    {
    System.out.print("[");
    for(int x=0;x<arr.length;x++)
    {
    if(x!=arr.length-1)
    System.out.print(arr[x]+",");
    else
    System.out.println(arr[x]+"]");
    }

    }
    }

  • 相关阅读:
    Angularjs 中文版API v1.3.9 阅读
    jquery之ajax
    requirejs中 shim
    reqiurejs学习
    angularjs与require的集成摘抄
    安装go-admin
    多种GitHub加速方式
    git初始化仓库操作
    git cherry-pick
    gc问题定位
  • 原文地址:https://www.cnblogs.com/IT4338/p/4675931.html
Copyright © 2011-2022 走看看