`
xu283900277xiu
  • 浏览: 39036 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类

JAVA实现排序算法之冒泡排序

阅读更多
一冒泡排序
对数组各元素从头到尾依次比较相邻的两个元素是,经过第一轮比较排序后便可把最大(或最小)的元素排好,然后再用同样的方法把剩下的元素逐个进行比较,就得到了你所要的顺序。可以看出如果有 n 个元素,那么一共要进行 n-1 轮比较,第 i 轮要进行 j=n-i 次比较。(如:有5个元素,则要进行5-1轮比较。第3轮则要进行5-3次比较)
下面是具体实现(按照从小到大的规则,如果想从大到小。则把代码if(arr[i] > arr[j])换成if(arr[i] < arr[j])即可):
JAVA代码:
public class Maopao {

	public void sort(int[] arr){
		System.out.println("排序前:");
		for(int i = 0; i < arr.length; i++ ){
			System.out.printf("%3s", arr[i]);      
		}
		System.out.println();
		System.out.println("----------------------------------");
		for(int i = 0; i < arr.length; 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; 
				}
			}
			System.out.println("第"+(i+1)+"次排序后:");
			for(int k = 0; k < arr.length; k++){
				System.out.printf("%3s", arr[k]); 
			}
			System.out.println();
		}
		System.out.println();
		System.out.println("----------------------------------");
		System.out.println("完成排序后:");
		for(int i = 0; i < arr.length; i++){
			System.out.printf("%3s", arr[i]); 
		}
	}
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		int[] a = {10, 32, 1, 9, 5,3, 7, 12, 0, 4,4, 3};
		Maopao mp = new Maopao();
        mp.sort(a);
	}

}
0
0
分享到:
评论

相关推荐

    应用Java和Python实现冒泡排序算法

    冒泡排序:应用Java和Python实现冒泡排序算法 冒泡排序:应用Java和Python实现冒泡排序算法 冒泡排序:应用Java和Python实现冒泡排序算法 冒泡排序:应用Java和Python实现冒泡排序算法 冒泡排序:应用Java和Python...

    各种排序算法比较(java实现)

    本文将详细探讨标题所提及的几种排序算法:合并排序、插入排序、希尔排序、快速排序、冒泡排序以及桶排序,并结合Java语言的实现进行解析。 1. **合并排序(Merge Sort)**: 合并排序是一种基于分治策略的排序算法...

    java排序算法插入选择冒泡

    java排序算法java排序算法插入选择冒泡java排序算法插入选择冒泡

    java基础 经典算法之冒泡排序详解

    1.冒泡排序的原理:每次都从第一个元素开始(索引0),向后两两比较,只要后面的比前面的大,就交换(从大到小) 2.通过画图分析,5个数字排4趟,n数字排n-1趟,而外层的for循环代表的是循环的趟数,所以外层循环的结束条件是...

    java算法——冒泡排序

    * 冒泡排序: * 每次在无序队列里将相邻两个数一次进行比较, * 将小数调到前面,逐次比较,直至将最大的数移到 * 最后。将剩下的N-1个数继续比较,将次大数移至 * 倒数第二位。

    Java冒泡排序算法

    根据给定的部分代码,我们可以详细解析如何用Java实现冒泡排序: ```java public class BubbleSortExample { public static void main(String[] args) { // 定义一个整型数组 int[] numbers = new int[]{2, 4, 5...

    冒泡排序 算法(冒泡,选择,插入,数组排序)

    总的来说,这段代码提供了四种排序算法的实现,分别是冒泡排序、选择排序、插入排序以及Java内置的数组排序。每种排序算法都有其适用场景,理解这些算法可以帮助我们更好地解决实际问题,并根据需求选择合适的排序...

    用java实现冒泡排序算法

    用 Java 实现冒泡排序算法 冒泡排序是一种简单的排序算法,它的基本思想是通过反复比较和交换相邻元素的位置来实现排序。下面是用 Java 实现冒泡排序算法的详细解释: 1. 排序方法 冒泡排序的排序方法是将被排序...

    详解Java常用排序算法-冒泡排序

    Java排序算法之冒泡排序详解 冒泡排序(Bubble Sort)是一种简单的排序算法,它重复地遍历要排序的数列,一次比较两个元素,如果它们的顺序错误就交换位置。这个过程持续对数列的末尾进行,直到整个数列都排序完成...

    java实现的4种排序算法(冒泡、快速、插入、选择)

    Java作为广泛应用的编程语言,提供了丰富的工具来实现各种排序算法。以下是根据标题和描述中提到的四种排序算法——冒泡排序、快速排序、插入排序和选择排序的详细说明。 **冒泡排序(BuddleSort)**: 冒泡排序是...

    JAVA冒泡排序和快速排序算法

    在JAVA中,实现这两种排序算法可以使用面向对象的特性,创建一个类如`MaopaoKuaisu.java`,在这个类中定义两个方法,分别实现冒泡排序和快速排序。类的结构可能如下: ```java public class MaopaoKuaisu { public...

    JAVA冒泡排序算法

    冒泡排序的时间复杂度为O(n^2),空间复杂度为O(1),是一种原地排序算法。虽然它在最坏情况和平均情况下的效率都不高,但由于其实现简单,常被用于教学和理解排序算法的基本原理。 冒泡排序的主要步骤包括: 1. 比较...

    java实现排序,各种排序算法,冒泡排序,选择排序,插入排序等等

    java实现排序,各种排序算法,冒泡排序,选择排序,插入排序等等

    常用排序算法的java实现(冒泡、插入、选择、希尔、归并、快排)

    1. **冒泡排序**:冒泡排序是最基础的排序算法之一,它通过不断交换相邻的逆序元素来逐渐将较大的元素“浮”到数组的前端。在Java中,冒泡排序的基本思路是使用两个for循环,外层循环控制比较的轮数,内层循环用于...

    Java排序算法实现:冒泡与选择排序示例代码

    Java排序算法实现主要涉及到两种经典的算法:冒泡排序和选择排序。这两种算法都是基于比较的排序方法,适用于小规模或教学目的的数据排序。 **冒泡排序(Bubble Sort)** 是一种简单直观的排序算法,其核心思想是...

    JAVA冒泡排序算法详解

    ### JAVA冒泡排序算法详解 冒泡排序是一种简单的排序算法,它重复地遍历要排序的元素列表,比较每对相邻元素,如果它们的顺序错误就把它们交换过来。遍历列表的工作是重复进行的,直到没有再需要交换的元素,也就是...

    学习排序算法之冒泡排序及其优化笔记.pdf

    - 实现冒泡排序的Java代码是一个双层循环结构,外层循环控制排序的轮数,内层循环负责每轮的比较和交换。 6. 冒泡排序的优化 - 优化一:设置一个标志位,如果在某一轮排序中没有发生任何交换,则说明数组已经有序...

    使用Java与Python实现的十大排序算法之冒泡排序

    在Java和Python中实现冒泡排序的过程基本一致,主要分为以下几步: 1. 遍历数列:对于Java和Python,都会有一个外层循环来控制遍历整个数列的次数,这个次数通常为n-1,其中n是数列的长度。例如在Python中,`for i ...

    Java各种排序算法代码.zip

    冒泡排序是最简单的排序算法之一,通过重复遍历待排序的元素列表,比较相邻元素并交换位置,直至列表排序完成。在Java中,冒泡排序通常使用两层循环实现。 2. 插入排序(Insertion Sort): 插入排序通过创建一个...

Global site tag (gtag.js) - Google Analytics