美文网首页Java学习
两种排序算法

两种排序算法

作者: Ordinaire | 来源:发表于2018-11-20 20:32 被阅读0次

冒泡排序

限制生成的随机数为0-100的五个数字,然后通过两重循环进行排序,最后遍历一维数组按照顺序输出

public class BubbelSort {
public static void main(String[] args) {
final int N = 5;
int[] numbers = new int[N];
Random random = new Random();
for(int i = 0; i < N; i++){
numbers[i] = random.nextInt(100);
}

    System.out.print("排序前:");
    //遍历一维数组
    for (int n:numbers
         ) {
        System.out.print(n+ "  ");
    }
    //外层循环控制排序趟数
    int temp;
    for(int i = 0; i < N-1; i++){
        //内层循环控制每趟的排序次数
        for (int j = i+1; j < N; j++){
            if (numbers[i] < numbers[j]){
         temp = numbers[i];
         numbers[i] = numbers[j];
         numbers[j] = temp;
            }
        }
    }
    System.out.print("\n排序后:");

    for (int n:numbers
    ) {
        System.out.print(n+ "  ");
    }
}

}


选择排序

public class selectSort {
public static void main(String[] args) {
final int N = 5;
int[] number = new int[N];
Random random = new Random();
for (int i = 0; i < N; i++){
number[i] = random.nextInt(100);
}
System.out.print("排序前:");
//遍历一维数组
for (int n:number
) {
System.out.print(n+ " ");
}
int min;
int temp;
for (int i = 0; i < N-1; i++){
min = i;
for (int j = i + 1; j< N; j++){
if (number[j] < number[min]){
min = j;
}
}
if (i != min){
temp = number[i];
number[i] = number[min];
number[min] = temp;
}
}
System.out.print("\n排序后的结果为:");
for (int n:number
) {
System.out.print(n+" ");
}
}
}

(转载)


作者:我就是个帝帝
链接:https://www.jianshu.com/p/84d8aa10b057
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

相关文章

  • 你对排序算法了解多少

    说起排序算法,可能大家会脱口而出:冒泡排序,选择排序。没错,这是我们最熟悉的两种排序算法,其实,排序算法远不止这些...

  • 2018-09-08

    排序算法 我们通常所说的排序算法是指内部排序算法,即数据记录在内存中进行排序。 排序算法大致分为两种: 一种是比较...

  • 插入排序算法实现

    排序算法是最常见,最基础的算法,作者文集中记录了两种排序算法(插入排序,归并排序) 插入排序算法实现很简单直接,附...

  • 排序笔记1----冒泡,选择,插入,希尔排序

    一、排序简介 我们通常所说的排序算法往往指的是内部排序算法,即数据记录在内存中进行排序。 排序算法大体可分为两种:...

  • 排序算法-下(Java语言实现)

    今天,我讲两种时间复杂度为 的排序算法,归并排序和快速排序。这两种排序算法适合大规模的数据排序,比上一节讲的那三...

  • 归并排序算法实现

    排序算法是最常见,最基础的算法,作者文集中记录了两种排序算法(插入排序,归并排序) 归并排序实现原理是切刀流,先中...

  • 简单排序算法

    刚学c++,利用两种间的排序算法来练练手0.01.冒泡法排序 2.快速排序 总结以下两种算法的思路不同点:

  • 【面试】常用排序算法总结

    我们通常所说的排序算法往往指的是内部排序算法,即数据记录在内存中进行排序。 排序算法大体可分为两种: 一种是比较排...

  • 常用排序算法(三)

    本篇介绍的两种算法是笔试面试过程中最常考到的两种排序算法,分别是快速排序和堆排序。尤其是快速排序经常会被问及,一方...

  • 常用排序算法(二)

    之前的文章讲解了三种时间复杂度为O(n^2)的简单排序算法,本篇介绍另外两种经典排序算法希尔排序和归并排序。这两种...

网友评论

    本文标题:两种排序算法

    本文链接:https://www.haomeiwen.com/subject/pyqfqqtx.html