Maison >Java >javaDidacticiel >Explication détaillée de la méthode de mise en œuvre de l'algorithme de tri par sélection Java

Explication détaillée de la méthode de mise en œuvre de l'algorithme de tri par sélection Java

WBOY
WBOYoriginal
2024-02-20 10:47:061142parcourir

Explication détaillée de la méthode de mise en œuvre de lalgorithme de tri par sélection Java

Java Selection Sort Code Explication détaillée et méthode de mise en œuvre

Selection Sort est un algorithme de tri simple et intuitif Son idée de base est de sélectionner le plus petit (ou le plus grand) élément placé au début de la séquence jusqu'à ce que toutes les données. les éléments à trier sont épuisés. Les principaux avantages de la méthode de tri par sélection sont qu'elle est simple dans son idée, facile à mettre en œuvre et ne nécessite pas d'espace de stockage supplémentaire, elle montre donc de bonnes performances sur certains problèmes de tri simples.

Ci-dessous, nous expliquons en détail la méthode d'implémentation de la méthode de tri par sélection et donnons des exemples de code Java spécifiques.

Méthode de mise en œuvre de la méthode de tri par sélection :

  1. Trouver le plus petit (le plus grand) élément de la séquence à trier et placez-le à la position de départ de la séquence.
  2. Continuez à trouver le plus petit (le plus grand) élément parmi les éléments non triés restants et placez-le à la fin de la séquence triée.
  3. Répétez l'étape 2 jusqu'à ce que tous les éléments soient triés.

Exemple de code Java :

public class SelectionSort {
    public static void selectionSort(int[] arr) {
        int n = arr.length;
        for (int i = 0; i < n-1; i++) {
            int min_idx = i;
            for (int j = i+1; j < n; j++) {
                if (arr[j] < arr[min_idx]) {
                    min_idx = j;
                }
            }
            int temp = arr[min_idx];
            arr[min_idx] = arr[i];
            arr[i] = temp;
        }
    }

    public static void main(String[] args) {
        int[] arr = {64, 25, 12, 22, 11};
        selectionSort(arr);
        System.out.println("排序后的数组:");
        for (int i = 0; i < arr.length; i++) {
            System.out.print(arr[i] + " ");
        }
    }
}

Le résultat en cours d'exécution est : 11 12 22 25 64

Dans le code ci-dessus, nous définissons une classe nommée SelectionSort, qui contient une méthode statique nommée selectionSort, qui reçoit un Prendre un tableau d'entiers comme un paramètre et sélectionnez-le pour le tri. Dans la méthode main, nous définissons un tableau d'entiers arr et appelons la méthode selectionSort pour le trier. Enfin, nous imprimons le tableau trié via une boucle.

La complexité temporelle de la méthode de tri par sélection est O(n^2), où n est la longueur de la séquence à trier. Cela rend la méthode de tri par sélection moins efficace pour trier des données à grande échelle. Cependant, dans certains problèmes de tri de données à petite échelle ou partiellement ordonnés, la méthode de tri par sélection peut toujours fonctionner très bien.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn