Maison  >  Article  >  Java  >  Découvrez les principes et les étapes de mise en œuvre du code de l'algorithme de tri par sélection Java

Découvrez les principes et les étapes de mise en œuvre du code de l'algorithme de tri par sélection Java

WBOY
WBOYoriginal
2024-02-18 17:27:06973parcourir

Découvrez les principes et les étapes de mise en œuvre du code de lalgorithme de tri par sélection Java

Comprendre l'algorithme de tri par sélection Java et ses étapes d'implémentation du code

Le tri par sélection est l'un des algorithmes de tri courants. Son idée principale est de trouver la valeur minimale dans le tableau et de la combiner avec la première valeur du tableau Exchange. les positions des éléments ; puis trouver la valeur minimale parmi les éléments restants et l'échanger avec le deuxième élément et ainsi de suite jusqu'à ce que l'ensemble du tableau soit trié ; La complexité temporelle du tri par sélection est O(n^2), ce qui ne convient pas au tri de données à grande échelle. Cependant, son principe est simple et intuitif, et c'est une bonne introduction pour les débutants pour comprendre les algorithmes de tri.

Les étapes d'implémentation du code de l'algorithme de tri par sélection Java seront analysées en détail ci-dessous et des exemples de code spécifiques seront fournis.

Les étapes de mise en œuvre de l'algorithme de tri par sélection sont les suivantes :

  1. Trouver la valeur minimale dans le tableau et enregistrer son indice
  2. Échanger la valeur minimale dans le tableau avec le premier élément du tableau ; éléments restants Trouvez la valeur minimale et enregistrez son indice ;
  3. Échangez la valeur minimale dans le tableau avec le deuxième élément du tableau
  4. Et ainsi de suite jusqu'à ce que tout le tableau soit trié.
  5. Ce qui suit est un exemple de code pour implémenter l'algorithme de tri par sélection en Java :
public class SelectionSort {
    public static void main(String[] args) {
        int[] arr = {64, 25, 12, 22, 11};
        selectionSort(arr);
        System.out.println("排序后的数组:");
        printArray(arr);
    }

    public static void selectionSort(int[] arr) {
        int n = arr.length;

        for (int i = 0; i < n-1; i++) {
            int minIndex = i;
            for (int j = i+1; j < n; j++) {
                if (arr[j] < arr[minIndex])
                    minIndex = j;
            }
            // 将最小值与第i个元素交换位置
            int temp = arr[minIndex];
            arr[minIndex] = arr[i];
            arr[i] = temp;
        }
    }
    
    public static void printArray(int[] arr) {
        int n = arr.length;
        for (int i=0; i < n; ++i)
            System.out.print(arr[i] + " ");
        System.out.println();
    }
}

Dans le code ci-dessus, nous définissons d'abord un tableau int arr et lui attribuons une valeur initiale. La méthode selectionSort() est ensuite appelée pour trier le tableau, dans laquelle nous utilisons deux boucles for imbriquées pour parcourir le tableau et trouver la valeur minimale.

Dans la boucle externe, nous contrôlons le parcours de chaque élément du tableau à travers la variable i, puis dans la boucle interne, nous utilisons la variable j pour parcourir les éléments restants à partir de la position suivante de i, et comparons arr [j] et la taille de arr[minIndex] pour trouver l'indice de la valeur minimale actuelle.

Après avoir trouvé la valeur minimale, nous utilisons une variable temporaire temp pour échanger la valeur minimale avec la valeur de l'élément de position actuelle. Enfin, à la fin du parcours de la boucle externe, l'ensemble du tableau aura été trié du plus petit au plus grand.

Après avoir terminé le tri, nous appelons la méthode printArray() pour imprimer le tableau trié.

Ce qui précède est une analyse détaillée de la compréhension de l'algorithme de tri par sélection Java et de ses étapes de mise en œuvre du code, et fournit des exemples de code spécifiques. Bien que le tri par sélection ne soit pas très efficace, il est simple et facile à comprendre, et il jette les bases de la compréhension d'autres algorithmes de tri plus complexes. Dans le même temps, la compréhension des différents algorithmes de tri nous aide à choisir la méthode de tri la plus appropriée pour répondre à nos besoins en matière de développement réel.

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