java中数组排序.知识点

Posted 蚂蚁偏偏爱上树

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中数组排序.知识点相关的知识,希望对你有一定的参考价值。

import java.util.*;
//选择排序
class SwitchTest
{
    public static void main(String[] args)
    {
        int[] arr = {3,5,6,23,45,2};
         
        //排序前
        printArray(arr);
         
        //排序后
        // selectSort(arr);
        Arrays.sort(arr);//java中已经定义好的一种排序方式,开发中,对数组排序,要使用该句代码
        // bubbleSort(arr);
        printArray(arr);
    }
    /*
    发现无论什么排序,都需要对满足条件的元素进行位置置换。
    所以可以把这部分相同的代码提取出来,单独封装成一个函数
    */
    public static void swap(int[] arr,int a,int b)
    {
        int temp = arr[a];
        arr[a] = arr[b];
        arr[b] = temp;
    }
     
    //冒泡排序
    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;
                }
            }
        }
    }
     
    //选择排序
    public static void selectSort(int[] arr)
    {
        for(int x=0;x<arr.length-1;x++)
        {
            for(int y=x+1;y<arr.length;y++)
            {
                if(arr[x]>arr[y])
                {
                    int temp = arr[x];
                    arr[x] = arr[y];
                    arr[y] = temp;
                }
            }
        }
    }
     
    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]+"]");
        }
    }
}

以上是关于java中数组排序.知识点的主要内容,如果未能解决你的问题,请参考以下文章

java基础3-重载+命令行传参+递归+数组+排序

markdown 数组排序片段

LeetCode810. 黑板异或游戏/455. 分发饼干/剑指Offer 53 - I. 在排序数组中查找数字 I/53 - II. 0~n-1中缺失的数字/54. 二叉搜索树的第k大节点(代码片段

Java 基础知识点 笔记总结

Java中数组的几个常用算法:插入算法,删除算法,冒泡排序算法

java 数组操作实例