【问题标题】:Selection Sorting/bubble Sorting algorithm选择排序/冒泡排序算法
【发布时间】:2016-11-01 23:28:06
【问题描述】:

我在算法方面是新手,我不知道如何编码,尤其是选择排序或冒泡排序算法..

我正在使用 Borland JBuilder3,谁能帮帮我??谢谢

【问题讨论】:

  • 维基百科有关于排序算法的文章。那是开始的地方。请访问help center,尤其是阅读How to Ask。 StackOverflow 不是一个“给我代码”网站(我们不会从头开始为你编写代码),在问这里之前,你应该做一些基础研究。此外,当您询问时,您应该展示您编写的代码并解释您不理解的内容。
  • 在实践中,您很可能不需要编写排序算法,因为 JDK 中有高效的方法,例如 Arrays.sortCollections.sort

标签: java arrays


【解决方案1】:

除非您特别需要使用这些类型的排序,否则:Arrays.sort() 函数通常效果很好。

否则这些可能会有所帮助:

选择排序

解释:http://www.tutorialspoint.com/data_structures_algorithms/selection_sort_algorithm.htm

Java 实现:

final int[] arr = { 5, 4, 3, 2, 1 }; // This is my array
    int min;
    for (int i = 0; i < arr.length; i++) {
        // Assume first element is min
        min = i;
        for (int j = i + 1; j < arr.length; j++) {
            if (arr[j] < arr[min]) {
                min = j;

            }
        }
        if (min != i) {
            final int temp = arr[i];
            arr[i] = arr[min];
            arr[min] = temp;
        }
        System.out.println(arr[i]);// I print the in ascending order
    }

冒泡排序

解释:http://www.tutorialspoint.com/data_structures_algorithms/bubble_sort_algorithm.htm

Java 实现:

public static void bubbleSort(int[] numArray) {

    int n = numArray.length;
    int temp = 0;

    for (int i = 0; i < n; i++) {
        for (int j = 1; j < (n - i); j++) {

            if (numArray[j - 1] > numArray[j]) {
                temp = numArray[j - 1];
                numArray[j - 1] = numArray[j];
                numArray[j] = temp;
            }

        }
    }
}

【讨论】:

    猜你喜欢
    • 2015-02-14
    • 2016-03-19
    • 1970-01-01
    • 2015-09-16
    • 2015-04-25
    • 2013-09-04
    • 2013-11-02
    相关资源
    最近更新 更多