你在JAVA中称之为这种排序是什么?

时间:2018-05-05 23:50:47

标签: java algorithm sorting

希望你们过得愉快!

我是Java的新手,所以我仍然掌握它。

有一种排序算法我经常使用

for(int i=0; i<array.length; i++){
    for(int j=i; j<array.length; j++){
        if(array[j] < array[i]){
            int temp = array[i];
            array[i] = array[j];
            array[j] = temp;
        }
    }
}

说明: 外部循环首先使用数组的第一个元素并开始将其与列表中其余元素进行比较,如果它大于元素之一,则交换它。

例如,我们得到了一个数组12,5,14,8,3

我们将数组[0]设为12。 将其与内循环中的数组[1]进行比较,因为5&lt; 12我们交换它们。内循环一直持续到array [4],其中array [4]&lt;阵列[0] 现在我们在正确的位置有3个作为数组中的最小元素

用其他元素冲洗并重复

这种排序是什么?因为它似乎不适合选择排序或插入排序,更不用说冒泡排序了。

感谢您的帮助!

1 个答案:

答案 0 :(得分:5)

这绝对是选择排序,因为最后你会在开头附近交换一个较高的数字,以获得较低的数字。大多数情况下,如果排序方法在选择结束时有交换。