📜  用于选择排序的Java程序

📅  最后修改于: 2022-05-13 01:58:09.617000             🧑  作者: Mango

用于选择排序的Java程序

选择排序算法通过从未排序的部分重复找到最小元素(考虑升序)并将其放在开头来对数组进行排序。该算法在给定数组中维护两个子数组。

1) 已经排序的子数组。
2) 未排序的剩余子数组。

在选择排序的每次迭代中,未排序的子数组中的最小元素(考虑升序)被挑选出来并移动到已排序的子数组中。

Java
// Java program for implementation of Selection Sort
class SelectionSort
{
    void sort(int arr[])
    {
        int n = arr.length;
 
        // One by one move boundary of unsorted subarray
        for (int i = 0; i < n-1; i++)
        {
            // Find the minimum element in unsorted array
            int min_idx = i;
            for (int j = i+1; j < n; j++)
                if (arr[j] < arr[min_idx])
                    min_idx = j;
 
            // Swap the found minimum element with the first
            // element
            int temp = arr[min_idx];
            arr[min_idx] = arr[i];
            arr[i] = temp;
        }
    }
 
    // Prints the array
    void printArray(int arr[])
    {
        int n = arr.length;
        for (int i=0; i