Maison  >  Article  >  développement back-end  >  Comment utiliser l'algorithme de tri à bulles en C++

Comment utiliser l'algorithme de tri à bulles en C++

WBOY
WBOYoriginal
2023-09-19 17:12:111410parcourir

Comment utiliser lalgorithme de tri à bulles en C++

Comment utiliser l'algorithme de tri à bulles en C++

L'algorithme de tri à bulles est un algorithme de tri simple mais inefficace. Il utilise plusieurs comparaisons et échanges pour trier une séquence de petite à grande (ou de grande à petite) dans l'ordre. . Ici, nous présenterons comment implémenter l'algorithme de tri à bulles à l'aide du langage C++ et joindrons des exemples de code détaillés.

  1. Principe de l'algorithme :
    L'idée de base de l'algorithme de tri à bulles est de comparer les éléments adjacents un à un de la séquence à trier. Si l'élément précédent est supérieur au dernier élément, les positions des deux éléments sont. échangé. Après une telle comparaison, l'élément le plus grand (ou le plus petit) « bouillonnera » jusqu'à la fin de la séquence. Effectuez ensuite les mêmes opérations de comparaison et d'échange sur les séquences restantes jusqu'à ce que toute la séquence soit en ordre.
  2. Implémentation de l'algorithme :
    Ce qui suit est un exemple de code utilisant le langage C++ pour implémenter l'algorithme de tri à bulles :
#include<iostream>
using namespace std;

// 冒泡排序函数
void bubbleSort(int arr[], int n) {
    for (int i = 0; i < n - 1; i++) {
        for (int j = 0; j < n - 1 - i; j++) {
            // 如果前一个元素大于后一个元素,交换它们的位置
            if (arr[j] > arr[j + 1]) {
                int temp = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = temp;
            }
        }
    }
}

// 主函数
int main() {
    int arr[] = { 64, 34, 25, 12, 22, 11, 90 };
    int n = sizeof(arr) / sizeof(arr[0]);

    bubbleSort(arr, n);

    cout << "排序后的数组:";
    for (int i = 0; i < n; i++) {
        cout << arr[i] << " ";
    }
    cout << endl;
    
    return 0;
}
  1. Exemple d'analyse :
    Tout d'abord, définissez un tableau d'entiers à trier dans la fonction principale arr,并按照需要进行初始化。然后通过计算数组的长度n,调用bubbleSort函数对数组进行排序。在bubbleSortDans la fonction, utilisez deux intégrations L'ensemble de boucles implémente la logique de base du tri des bulles : la boucle externe contrôle le nombre de tours de comparaison et d'échange, et la boucle interne est responsable de la comparaison et de l'échange spécifiques de chaque tour. Enfin, le tableau trié est affiché dans la fonction principale.
  2. Démonstration des résultats :
    Lorsque le code ci-dessus est exécuté, la console affichera les résultats suivants :
排序后的数组:11 12 22 25 34 64 90

Vous pouvez voir qu'après le tri des bulles, les éléments du tableau sont correctement disposés du plus petit au plus grand.

Résumé :
L'algorithme de tri à bulles est un algorithme de tri simple mais inefficace. Dans des applications pratiques, l’algorithme de tri à bulles peut être utilisé pour le tri de données à petite échelle. Cependant, pour les données à grande échelle, l’algorithme de tri à bulles présente une complexité temporelle élevée et n’est pas recommandé.

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