我个人理解的冒泡排序法:
冒泡法,好比像水里冒出气泡一样,每次从剩下的一堆数当中找出一个最大或最小的值。等所有的气泡都冒出来了,数值的顺序也就出来了。
BubbleSort.java
//package com.liany.demo.sort;
import java.util.Arrays;
/**
* 冒泡法排序
* @author modig
*/
public class BubbleSort {
public static void sort(int[] array){
for(int i = 0; i < array.length - 1; i++){
//当前值当作最小值
int min = array[i];
for(int j = i+1; j < array.length; j++){
if(min>array[j]){
//如果后面有比min值还小的就交换
min = array[j];
array[j] = array[i];
array[i] = min;
}
}
}
System.out.println(Arrays.toString(array));
}
/**
* @param args
*/
public static void main(String[] args) {
int[] array = {10,3,1,2,4,9,8,7,5,6,};
sort(array);
}
}
打印结果:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
以下je朋友hualang的方法也可以,不过不像冒泡法,更像沉石法, 每次最大的数往后扔,呵呵:
http://www.iteye.com/topic/1115964
分享到:
相关推荐
Java排序算法实现主要涉及到两种经典的算法:冒泡排序和选择排序。这两种算法都是基于比较的排序方法,适用于小规模或教学目的的数据排序。 **冒泡排序(Bubble Sort)** 是一种简单直观的排序算法,其核心思想是...
冒泡排序:应用Java和Python实现冒泡排序算法 冒泡排序:应用Java和Python实现冒泡排序算法 冒泡排序:应用Java和Python实现冒泡排序算法 冒泡排序:应用Java和Python实现冒泡排序算法 冒泡排序:应用Java和Python...
冒泡排序详解,简单而详细的讲清楚了,什么是冒泡排序。 冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。 它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首...
排序算法java版,速度排行:冒泡排序、简单选择排序、直接插入排序、折半插入排序、希尔排序、堆排序、归并排序、快速排序.mht
* 冒泡排序: * 每次在无序队列里将相邻两个数一次进行比较, * 将小数调到前面,逐次比较,直至将最大的数移到 * 最后。将剩下的N-1个数继续比较,将次大数移至 * 倒数第二位。
本文将深入探讨Java编程语言中实现的七种主要排序算法:直接插入排序、希尔排序、选择排序、堆排序、冒泡排序、快速排序以及归并排序。每种算法都有其独特性,适用于不同的场景和数据特性。 1. **直接插入排序**:...
这里我们将深入探讨标题和描述中提到的六种排序算法:快速排序、归并排序、插入排序、冒泡排序、选择排序以及堆排序。 1. **快速排序**:由C.A.R. Hoare在1960年提出,是一种高效的分治算法。快速排序的基本思想是...
### Java冒泡排序方法详解 #### 一、冒泡排序简介 冒泡排序是一种简单的排序算法,它重复地遍历待排序的数列,依次比较相邻的两个元素,如果它们的顺序错误就把它们交换过来。遍历数列的工作是重复进行的,直到...
在Java中实现冒泡排序,我们可以创建一个名为`BubbleSortTutorial`的类,其中包含一个`bubbleSort`方法用于执行排序,以及一个辅助方法`printArray`用于打印数组内容。在`bubbleSort`方法中,我们使用两层循环来实现...
根据给定的部分代码,我们可以详细解析如何用Java实现冒泡排序: ```java public class BubbleSortExample { public static void main(String[] args) { // 定义一个整型数组 int[] numbers = new int[]{2, 4, 5...
java冒泡排序代码,亲测能用,控制台输入数据,自动排序
1.冒泡排序的原理:每次都从第一个元素开始(索引0),向后两两比较,只要后面的比前面的大,就交换(从大到小) 2.通过画图分析,5个数字排4趟,n数字排n-1趟,而外层的for循环代表的是循环的趟数,所以外层循环的结束条件是...
以上三个知识点总结了关于 Java 排序的一些基本应用,包括基础的冒泡排序算法、使用标准库 `Collections.sort()` 进行排序以及使用 `RuleBasedCollator` 实现国际化排序等。这些技术对于编写高效、可维护的 Java ...
Java 算法:冒泡,选择,插入排序算法
**冒泡排序**是一种基础的排序方法,它通过重复遍历数组,比较相邻元素并交换位置,使得较大的元素逐渐“浮”到数组的一端。冒泡排序的时间复杂度为O(n²),在大数据量时效率较低,但其简单易懂,适合小规模或部分...
java排序算法java排序算法插入选择冒泡java排序算法插入选择冒泡
1. **冒泡排序**:冒泡排序是最基础的排序算法之一,它通过不断交换相邻的逆序元素来逐渐将较大的元素“浮”到数组的前端。在Java中,冒泡排序的基本思路是使用两个for循环,外层循环控制比较的轮数,内层循环用于...
下面我们将深入探讨冒泡排序的工作原理、Java代码实现以及其效率分析。 ### 冒泡排序的工作原理 冒泡排序的基本思想是,重复地走访过要排序的元素列表,依次比较相邻的两个元素,如果它们的顺序(如从小到大)错误...
本主题将详细介绍三种基本的排序算法:快速排序、选择排序和冒泡排序,以及它们在Java中的实现。 1. **快速排序**: 快速排序是一种高效的分治算法,由C.A.R. Hoare在1960年提出。其主要思想是通过一趟排序将待排...
在JAVA中,实现这两种排序算法可以使用面向对象的特性,创建一个类如`MaopaoKuaisu.java`,在这个类中定义两个方法,分别实现冒泡排序和快速排序。类的结构可能如下: ```java public class MaopaoKuaisu { public...