Maison  >  Article  >  développement back-end  >  Comment écrire un algorithme de tri par insertion en utilisant C#

Comment écrire un algorithme de tri par insertion en utilisant C#

王林
王林original
2023-09-21 12:54:111087parcourir

Comment écrire un algorithme de tri par insertion en utilisant C#

Comment écrire un algorithme de tri par insertion en utilisant C#

Le tri par insertion est un algorithme de tri simple et intuitif qui est souvent utilisé dans le développement réel. Il fonctionne en construisant une séquence ordonnée pour les données non triées, il parcourt la séquence triée d'avant en arrière, trouve la position correspondante et l'insère.

Ci-dessous, nous présenterons en détail comment écrire l'algorithme de tri par insertion en utilisant C# et fournirons des exemples de code spécifiques.

Tout d'abord, nous devons définir un tableau pour le tri. Dans cet exemple, nous utilisons un tableau d'entiers pour le tri et le nombre d'éléments du tableau est défini sur n.

int[] arr = new int[n];

Ensuite, nous pouvons écrire l'algorithme de tri par insertion correspondant.

public static void InsertionSort(int[] arr)
{
    int n = arr.Length;
    for (int i = 1; i < n; ++i)
    {
        int key = arr[i];
        int j = i - 1;

        while (j >= 0 && arr[j] > key)
        {
            arr[j + 1] = arr[j];
            j = j - 1;
        }
        arr[j + 1] = key;
    }
}

Dans ce code, nous utilisons deux boucles pour implémenter le tri par insertion. La boucle externe commence du deuxième élément jusqu'au dernier élément, indiquant l'élément actuellement à insérer. La boucle interne part de l'élément actuellement à insérer et le compare en permanence avec la pièce triée pour trouver la position d'insertion.

Lorsque la boucle intérieure se termine, nous mettons l'élément actuellement à insérer dans la bonne position et passons au tour de boucle suivant.

Enfin, on peut trier en appelant la méthode InsertionSort.

int[] arr = { 9, 5, 1, 4, 3, 6, 8, 2, 7 };
InsertionSort(arr);

Console.WriteLine("排序后的数组:");
foreach (int num in arr)
{
    Console.Write(num + " ");
}

Dans cet exemple, nous créons d'abord un tableau contenant 9 entiers et le passons en paramètre à la méthode InsertionSort. Ensuite, nous imprimons le tableau trié via une boucle foreach.

Exécutez le programme et le résultat est le suivant :

排序后的数组:
1 2 3 4 5 6 7 8 9

Vous pouvez voir que l'algorithme de tri par insertion a réussi à trier le tableau.

Pour résumer, le tri par insertion est un algorithme de tri simple mais efficace. En construisant continuellement une séquence ordonnée et en insérant un par un des éléments non triés dans la séquence triée, un résultat ordonné peut être rapidement obtenu. En développement réel, nous pouvons modifier l'algorithme selon les besoins pour l'adapter à différents types de tri de données. Grâce aux exemples de code ci-dessus, je pense que vous maîtrisez l'utilisation de C# pour écrire l'algorithme de tri par insertion. J'espère que cet article vous aidera !

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