几种排序

Posted yunquan

tags:

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

 

  排序这里讲解这些

  1. 选择排序
  2. 冒泡排序

 

 

 

  一、选择排序

  选择排序,其实就是把第一个元素和后面的一个一个进行比较,把最大或者最小的移动到前面,类似于下图,我简单了画了一下。

技术分享图片

  接下来,代码如下:

package com.company;

public class Main {


    public static void main(String[] args) {
        System.out.println("大家好,我是Vae");

        int  [] arr ={16,45,20,2,6};
        System.out.println("排序前的数组");
        PrintArray(arr);
        System.out.println("排序后的数组");
        SelectSort(arr);
        PrintArray(arr);

    }

    public static  void PrintArray(int[] arr){
        for (int i = 0; i <arr.length ; i++) {
            if (i != arr.length-1) {
                System.out.print(arr[i]+",");
            }
            else
                System.out.println(arr[i]);
        }
    }

    public static  void SelectSort(int [] arr)
    {
        for (int i = 0; i < arr.length-1; i++) {
            for (int j = i+1; j < arr.length; j++) {
                if (arr[i] > arr[j]) {
                    int temp=arr[i];
                    arr[i]=arr[j];
                    arr[j]=temp;
                }
            }
        }

    }

}

重点就在于SelectSort这个方法,我写的默认是从小到大进行排序。输出结果如下:

技术分享图片

选择排序,就是这样了。

 

  二、冒泡排序

  冒泡排序就是像水泡冒出水面一样,越来越大,冒泡排序,就是最大或者最小的放到最后,然后依次这样交换,如下图:

技术分享图片

代码只放冒泡排序的了:

 //冒泡排序
    public static  void  BubbleSort(int [] arr)
    {
        for (int i = 0; i < arr.length-1; i++) {
            for (int j = 0; j < arr.length-1-i; j++) {
                if (arr[j] > arr[j+1]) {
                    int temp=arr[j];
                    arr[j]=arr[j+1];
                    arr[j+1]=temp;
                }
            }
        }

    }

 

以上是关于几种排序的主要内容,如果未能解决你的问题,请参考以下文章

初识Spring源码 -- doResolveDependency | findAutowireCandidates | @Order@Priority调用排序 | @Autowired注入(代码片段

hadoop的mapreduce常见算法案例有几种

一张图,理顺 Spring Boot应用在启动阶段执行代码的几种方式

一张图,理顺 Spring Boot应用在启动阶段执行代码的几种方式

Java实现几种排序

几种排序方式的java实现(01:插入排序,冒泡排序,选择排序,快速排序)