`

Java冒泡排序+图形界面显示 运算步骤

阅读更多

importjava.awt.FlowLayout;

importjava.awt.TextArea;

importjava.awt.event.ActionEvent;

importjava.awt.event.ActionListener;

 

importjavax.swing.JButton;

importjavax.swing.JFrame;

 

public class Test9 extends JFrame{

private JButtonbtn = new JButton("排序");

private static TextArea ta = new TextArea(12,70);

private int[] arr ={2,1,6,88,12,99,12,33,99,88,100,22,-7};;

public Test9() {

setSize(550, 300);

setVisible(true);

setDefaultCloseOperation(DISPOSE_ON_CLOSE);

setLocationRelativeTo(null);

setLayout(new FlowLayout());

add(btn);

btn.addActionListener(new ActionListener() {

 

publicvoid actionPerformed(ActionEvent arg0) {

bubbleSort(arr);

}

});

add(ta);

}

/**

* @param args

*/

public static void main(String[] args) {

new Test9();

}

 

public static int[] bubbleSort(int[] source) {

boolean isSort =false; // 是否排序

 

for (int i = 1; i < source.length; i++) {

isSort = false;// 在每次排序前都初始化为false

 

ta.append("---------------"+i+"次排序【"+arrayToString(source)+"---------------\n");

 

for (int j = 0; j < source.length - i; j++) {

if (source[j] > source[j + 1]) {

int temp = source[j];

source[j]= source[j + 1];

source[j+ 1] = temp;

 

isSort= true;// TRUE表明此次循环(外层循环)有排序。

 

ta.append("" + i +"次排序,第" + (j+1) +"次比较。" + source[j] +"" + source[j+1] +"交换位置【"+arrayToString(source)+"\n");

}

}

 

if (!isSort) {

ta.append("排序完毕!\n");

break;// 如果没有排序,说明数据已经排序完毕。

}

}

return source;

}

 

public static String arrayToString(int[] arr) {

if (arr ==null || arr.length == 0) {

return"";

}

StringBuilder sbr = new StringBuilder();

 

for (int i=0;i<arr.length;i++) {

sbr.append(arr[i]);

if (i != arr.length - 1) {

sbr.append(",");

}

}

 

return sbr.toString();

}

}

 

分享到:
评论

相关推荐

    Java排序(带图形界面)

    提供插入排序,选择排序,冒泡排序三种排序方法,对数据进行排序,并可以在图形界面演示排序过程。 执行语句:java sort &lt;输入方式&gt; &lt;图形界面/非图形界面选择&gt; &lt;待排序数列&gt; 例: java sort 0 643 323 12 3 523 23 ...

    Java核心算法+插入排序+冒泡排序+选择排序+快速排序

    冒泡排序是一种简单的排序算法,它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。 **算法步骤**...

    冒泡排序+详细代码+java

    冒泡排序+详细代码+java

    java基础冒泡排序.ppt

    冒泡排序详解,简单而详细的讲清楚了,什么是冒泡排序。 冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。 它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首...

    java冒泡排序代码

    java冒泡排序代码,亲测能用,控制台输入数据,自动排序

    八种排序算法原理及Java实现( 冒泡排序+快速排序直接插入排序+希尔排序+选择排序+归并排序+基数排序)

    八种排序算法原理及Java实现是排序算法中的一种,包括冒泡排序、快速排序、直接插入排序、希尔排序、选择排序、归并排序和基数排序等。 冒泡排序是八种排序算法中的一种,属于交换排序。冒泡排序的基本思想是重复...

    java 冒泡排序方法

    ### Java冒泡排序方法详解 #### 一、冒泡排序简介 冒泡排序是一种简单的排序算法,它重复地遍历待排序的数列,依次比较相邻的两个元素,如果它们的顺序错误就把它们交换过来。遍历数列的工作是重复进行的,直到...

    java教程-数组应用+冒泡排序+选择排序+插入排序

    以下是冒泡排序的Java实现代码: ``` for(int i=0;i;i++){ for(int j=0;j;j++){ if(a[j]&gt;a[j+1]){ int temp=a[j]; a[j]=a[j+1]; a[j+1]=temp; } } } ``` 选择排序 选择排序的核心思想是需要设置当前的考察...

    java 冒泡排序 数组冒泡排序

    冒泡排序是一种基础且经典的排序算法,它通过不断交换相邻两个元素的位置,使得每一次遍历都能将当前未排序部分的最大(或最小)元素“冒”到已排序部分的末尾。在Java编程语言中,我们可以很容易地实现这个算法。...

    java冒泡排序java冒泡排序集锦方法!

    以上三个知识点总结了关于 Java 排序的一些基本应用,包括基础的冒泡排序算法、使用标准库 `Collections.sort()` 进行排序以及使用 `RuleBasedCollator` 实现国际化排序等。这些技术对于编写高效、可维护的 Java ...

    java 冒泡排序法 PPT文档

    冒泡排序是一种基础且经典的排序算法,主要应用于计算机科学领域,特别是在编程语言如Java中。它的名字来源于排序过程中较小的元素像气泡一样逐渐“浮”到数组或列表的顶端。这个PPT文档很可能是详细介绍了Java实现...

    Java冒泡排序算法

    在Java中实现冒泡排序,我们可以从以下几个方面来深入理解: 1. **基本概念**:冒泡排序通过重复遍历待排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。遍历数列的工作是重复地进行直到没有再...

    一个十分经典的java冒泡排序,界面实现.rar

    在Java编程中,我们可以用面向对象的思想来实现冒泡排序,结合图形用户界面(GUI)让排序过程可视化,这有助于学习和理解排序算法。 本项目中,"一个十分经典的java冒泡排序,界面实现.rar" 提供了一个Java程序,它...

    JAVA冒泡排序算法详解

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

    JAVA冒泡排序及其优化

    在Java中实现冒泡排序,我们可以使用以下代码: ```java void bubbleSort(int[] array) { int n = array.length; for (int i = 0; i ; i++) { for (int j = 0; j ; j++) { if (array[j] &gt; array[j + 1]) { // ...

    用java实现冒泡排序法

    在Java中实现冒泡排序的步骤: 1. 创建一个整型数组,用于存储待排序的元素。 2. 设置两个循环,外层循环控制遍历的轮数,内层循环控制每一轮中元素的比较与交换。 3. 在内层循环中,比较相邻两个元素的大小,如果前...

    Java冒泡排序代码

    //测试冒泡排序 /********************* * int[] num = {23,45,76,78,98,54,}; 第一次 23 45 76 78 54 98 第二次 23 45 76 54 78 98 第三次 23 45 54 76 78 98 输出 :23 45 54 76 78 98 当判断为正确时就退出...

    java冒泡排序泡排序的详细讲解

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

    java算法——冒泡排序

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

Global site tag (gtag.js) - Google Analytics