`
Java_Fan
  • 浏览: 82098 次
  • 性别: Icon_minigender_1
  • 来自: 西安
文章分类
社区版块
存档分类
最新评论

结合舞蹈更易理解的算法--冒泡排序算法[java代码]

 
阅读更多

舞蹈地址:http://t.cn/hrf58M

冒泡排序算法java代码:

/**
 * 冒泡排序
 * @author hsy
 *
 */
public class BubbleSort
{
    private long[] a;
    private int nElems;
    
    public BubbleSort( int max)
    {
        super();
        this.a = new long[max];
        nElems = 0;
    }
    
    /**
     * 向数组中插入数据
     * @param value
     */
    public void insert(long value){
        a[nElems] = value;
        nElems++;
    }
    
    /**
     * 打印数组
     *
     */
    public void display(){
        for(int i=0;i<nElems;i++){
            System.out.print(a[i]+",");
        }
        System.out.println("");
    }
    
    /**
     * 排序
     *
     */
    public void bubbleSort(){
        int out;
        int in;
        for(out=nElems-1;out>1;out--){
            for(in=0;in<out;in++){
                if(a[in]>a[in+1]){
                    swap(in,in+1);
                }
            }
        }
    }
    
    /**
     * 大小换位
     * @param index1
     * @param index2
     */
    private void swap(int index1,int index2){
        long temp = a[index1];
        a[index1] = a[index2];
        a[index2] = temp;
    }
    
    public static void main(String[] args){
        int max = 100;
        BubbleSort arr = new BubbleSort(max);
        
        arr.insert(10);
        arr.insert(5);
        arr.insert(45);
        arr.insert(8);
        arr.insert(34);
        arr.insert(78);
        arr.insert(22);
        arr.insert(68);
        arr.insert(82);
        arr.insert(53);
        arr.insert(7);
        arr.insert(99);
        arr.insert(57);
        arr.insert(72);
        
        arr.display();
        long start = System.currentTimeMillis();
        arr.bubbleSort();
        long end = System.currentTimeMillis();
        System.out.println("排序耗时:"+(end-start));
        arr.display();
    }
    
}

控制台输出:

10,5,45,8,34,78,22,68,82,53,7,99,57,72,
排序耗时:0
5,7,8,10,22,34,45,53,57,68,72,78,82,99,


分享到:
评论

相关推荐

    [Java算法-排序]冒泡排序.java

    该资源包括实用练习,让读者可以练习在Java中实现冒泡排序,并提供解决方案以帮助读者检查自己的工作并深入理解所学内容。 无论您是Java编程的初学者还是有经验的程序员,该资源都将为您提供有价值的指导和支持,...

    Java代码-排序-直接插入排序、希尔排序、直接选择排序、冒泡排序、堆排序、快速排序、归并排序中部分排序以及算法-贪心法

    Java代码-排序-直接插入排序、希尔排序、直接选择排序、冒泡排序、堆排序、快速排序、归并排序中部分排序以及算法-贪心法,大家可以将源码下载下来进行学习,附带着注释和解释,有不理解的可以找博主一起探讨,共同...

    算法-数据结构和算法-9-冒泡排序.rar

    冒泡排序是一种基础且经典的排序算法,它的基本思想是通过重复遍历待排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。遍历数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序...

    排序算法 -- 冒泡排序

    冒泡排序是一种基础且经典的排序算法,它的基本思想是通过不断地交换相邻的逆序元素,使得每一轮排序后,...但对于初学者来说,理解和实现冒泡排序有助于建立对排序算法的基础理解,从而更好地掌握其他复杂的排序算法。

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

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

    经典排序算法源代码-插入排序-选择排序-冒泡排序

    本资源包含三个经典的排序算法的源代码:插入排序、选择排序和冒泡排序,这些都是初级到中级程序员常学习和使用的算法。下面将详细介绍这三个排序算法的工作原理、特点以及代码实现。 1. **插入排序(Insertion ...

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

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

    算法-理论基础- 排序- 原始冒泡排序(包含源程序).rar

    冒泡排序作为一种简单的排序算法,从诞生之初就因其直观性和易实现性被广泛用于计算机科学和编程教学之中。其核心思想在于通过一系列的比较和交换操作,逐步将无序数组中的元素按顺序排列。尽管在处理大数据集时效率...

    [7.3.1]--503冒泡和选择排序算法及分析.srt

    [7.3.1]--503冒泡和选择排序算法及分析.srt

    [7.3.1]--503冒泡和选择排序算法及分析.mp4

    [7.3.1]--503冒泡和选择排序算法及分析.mp4

    [Java算法-排序]-堆排序.java

    该资源包括实用练习,让读者可以练习在Java中实现堆排序,并提供解决方案以帮助读者检查自己的工作并深入理解所学内容。 无论您是Java编程的初学者还是有经验的程序员,该资源都将为您提供有价值的指导和支持,帮助...

    [Java算法-排序]-插入排序.java

    该资源包括实用练习,让读者可以练习在Java中实现插入排序,并提供解决方案以帮助读者检查自己的工作并深入理解所学内容。 无论您是Java编程的初学者还是有经验的程序员,该资源都将为您提供有价值的指导和支持,...

    8.12-8.19-冒泡-选择-插入-希尔-快速-归并-基数-堆排序-排序算法Swift代码及UI演示

    1. 冒泡排序(Bubble Sort):冒泡排序是最简单的排序算法之一,通过不断交换相邻的不正确顺序元素,使较大的元素逐渐“浮”到序列的末尾。它的时间复杂度为O(n^2)。 2. 选择排序(Selection Sort):选择排序每次...

    冒泡算法实现Java代码

    通过研究这些示例,你可以更深入地理解冒泡排序的实现细节,以及如何在实际编程中应用这个算法。 总之,冒泡排序是计算机科学中最基本的排序算法之一,对于初学者来说,掌握它的原理和实现方式是学习算法和数据结构...

    [Java算法-排序练习]三色排序判断.java

    该资源包括实用练习,让读者可以练习在Java中实现三色排序判断,并提供解决方案以帮助读者检查自己的工作并深入理解所学内容。 无论您是Java编程的初学者还是有经验的程序员,该资源都将为您提供有价值的指导和支持...

    用java实现冒泡排序算法

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

    java代码-使用java解决java排序之-快速排序的问题的源代码

    java代码-使用java解决java排序之-快速排序的问题的源代码 ——学习参考资料:仅用于个人学习使用!

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

    在编程领域,排序算法是数据结构与算法学习中的基础部分,尤其在JAVA中,掌握不同的排序算法对于提高...理解并掌握这两种排序算法,不仅可以帮助我们编写高效的JAVA代码,也有助于提升我们的编程思维和问题解决能力。

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

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

Global site tag (gtag.js) - Google Analytics