1. 冒泡排序:冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越大的元素会经由交换慢慢“浮”到数列的顶端。
/** * 冒泡法排序 * 比较相邻的元素。如果第一个比第二个小,就交换他们两个。 * 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最小的数。 * 针对所有的元素重复以上的步骤,除了最后一个。 * 持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。 * * @param numbers * 需要排序的整型数组 */ public static void bubbleSort(int[] a) { int[] a = {2,1,6,8,7,4,5,3,9,10}; int temp; int size = a.length; for(int i=1; i<size; i++) { for(int j=0; j<size-i; j++) { if(a[j] < a[j+1]) { temp = a[j]; a[j]=a[j+1]; a[j+1]=temp; } } for(int aa : a) System.out.print(aa+","); System.out.println(); } } 循环结果: 2,6,8,7,4,5,3,9,10,1, 6,8,7,4,5,3,9,10,2,1, 8,7,6,5,4,9,10,3,2,1, 8,7,6,5,9,10,4,3,2,1, 8,7,6,9,10,5,4,3,2,1, 8,7,9,10,6,5,4,3,2,1, 8,9,10,7,6,5,4,3,2,1, 9,10,8,7,6,5,4,3,2,1, 10,9,8,7,6,5,4,3,2,1,(我们所需要的结果)
2. 选择排序:选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。 选择排序是不稳定的排序方法。
/** * 选择排序 * 从最后一位开始依次倒序跟第一位对比大小,并把最小的数字与第一位调换位置。 * 在未排序序列中找到最小元素,存放到排序序列的起始位置 * 再从剩余未排序元素中继续寻找最小元素,然后放到排序序列起始位置。 * 以此类推,直到所有元素均排序完毕。 * * @param numbers */ public static void selectSort(int[] numbers) { int[] a = {5,3,6,8,7,4,2,1,9,10}; int size = numbers.length; int temp; for (int i = 0; i < size; i++) { int k = i; for (int j = size - 1; j >i; j--) { if (numbers[j] < numbers[k]) { k = j; } } temp = numbers[i]; numbers[i] = numbers[k]; numbers[k] = temp; for(int aa : numbers) System.out.print(aa+","); System.out.println(); } } 运行结果: 1,3,6,8,7,4,2,5,9,10, 1,2,6,8,7,4,3,5,9,10, 1,2,3,8,7,4,6,5,9,10, 1,2,3,4,7,8,6,5,9,10, 1,2,3,4,5,8,6,7,9,10, 1,2,3,4,5,6,8,7,9,10, 1,2,3,4,5,6,7,8,9,10, 1,2,3,4,5,6,7,8,9,10, 1,2,3,4,5,6,7,8,9,10, 1,2,3,4,5,6,7,8,9,10,
简单整理两种排序方法,亲测没问题。
相关推荐
本篇文章将详细探讨标题为“8种常用排序方法Java类实现”的主题,主要基于描述中的内容,即8种业务中常见的排序方法在Java语言中的实现。 1. **冒泡排序(Bubble Sort)**:冒泡排序是一种简单直观的排序算法,通过...
Java实现六种常用排序 并用多线程进行速度比较(其实意义不大) 含有代码
本文将深入探讨标题"常用排序算法java演示"中涉及的知识点,包括排序算法的原理、Java实现方式以及其在实际应用中的图形演示。 首先,让我们逐一了解几种常见的排序算法: 1. **冒泡排序(Bubble Sort)**:这是一...
Java集合框架中的`List`接口和数组(Array)是两种常用的数据结构,它们在处理数据时各有优势。下面我们将深入探讨如何在Java中实现集合的分组与排序。 1. **集合分组**: 集合分组通常涉及到`GroupingBy`操作,这...
### Java几种常用的排序算法 在Java编程语言中,排序算法是数据处理中不可或缺的一部分,它不仅可以帮助我们组织数据,还能提高程序效率。本篇文章将详细介绍几种常用的Java排序算法:选择排序、冒泡排序以及插入...
在编程领域,排序算法是计算机科学中的基础但至关重要的部分,尤其在Java这样的高级语言中。本文将深入探讨Java中实现的四种...同时,了解这些排序算法的优缺点,有助于在实际编程中根据数据特性选择合适的排序方法。
本篇文章将详细讲解标题中提到的六种常见排序算法的Java实现。 1. **冒泡排序**:冒泡排序是最基础的排序算法之一,它通过不断交换相邻的逆序元素来逐渐将较大的元素“浮”到数组的前端。在Java中,冒泡排序的基本...
除了以上介绍的四种排序算法外,Java中还有以下几种常用的排序算法: 1. **冒泡排序**:每次比较两个相邻的元素,如果它们的顺序错误就把它们交换过来。遍历所有元素之后,最大的元素就会被放到最后的位置上。然后...
本资料包聚焦于"Java常用排序算法"和"程序员必须掌握的8大排序算法",并深入探讨了"二分法查找"这一高效搜索技术。 首先,我们来看八大排序算法。这些算法包括: 1. **冒泡排序**:最简单的排序方法,通过不断交换...
本资源包含了一些常见的排序算法的Java实现,包括快速排序、堆排序和归并排序。下面将对这些排序算法进行详细介绍,并探讨它们的原理、优缺点以及适用场景。 1. 快速排序(Quick Sort) 快速排序是一种分治策略的...
归并排序是稳定的排序方法。 4. 基数排序: 基数排序是一种非比较型排序算法,根据数字的位数从低到高进行排序。它适用于整数排序,时间复杂度为O(kn),其中k是数字的最大位数。基数排序是稳定的,不会改变相等元素...
- **定义**:直接插入排序是一种简单的排序方法,它的工作原理是将一个记录插入到已排序好的有序表中,从而得到一个新的、记录增1的有序表。 - **时间复杂度**: - 最好情况:O(n),即当输入数组已经是排序好的情况...
以下是关于"Java常用排序算法"的详细解释: 1. 插入排序(Insertion Sort) 插入排序是一种简单直观的排序算法,它的工作原理类似于我们日常生活中整理扑克牌的过程。算法分为两个阶段:遍历待排序的数组,将每个...
在Java中,`java.util.Arrays`类提供了`sort()`方法,它可以对整数、浮点数、字符及对象数组进行排序,底层使用的是TimSort,一种稳定的排序算法,综合了插入排序、归并排序和自底向上的归并排序。 这些排序算法各...
Java基础常用的排序算法是编程学习中的重要组成部分,尤其对于初学者来说,掌握这些排序方法能够提升编程能力并有助于解决实际问题。在这个主题中,我们将深入探讨几种常见的排序算法,包括冒泡排序、插入排序、选择...
Java 实现归并排序是一种常用的排序算法,通过分治策略将原始数组分成小组,然后对每个小组进行排序,最后将排序好的小组合并成一个有序数组。下面是 Java 实现归并排序的知识点总结: 基本思想 归并排序的基本...
冒泡排序和快速排序是两种基础但广泛使用的数据排序算法。冒泡排序由于其简单直观的特性,易于理解和实现,而快速排序则以其较高的效率在数据量较大时展现出优势。 首先,让我们来看冒泡排序算法。冒泡排序通过重复...
### Java中的常用排序算法 #### 一、概述 在计算机科学中,排序算法是一类非常重要的算法,用于将一组无序的数据按照特定的顺序排列。Java作为一种广泛应用的编程语言,支持多种内置排序方法以及允许开发者自定义...