Maison > développement back-end > C++ > le corps du texte

Explication détaillée et exemple de démonstration de la fonction de tri C++

PHPz
Libérer: 2024-04-02 18:39:01
original
1281 Les gens l'ont consulté
<p>Résumé : La fonction de tri C++ est utilisée pour trier les éléments du conteneur. Par défaut, il trie par ordre croissant à l'aide de l'opérateur </p> <p><img src="https://img.php.cn/upload/article/000/000/164/171205434266801.jpg" alt="Explication détaillée et exemple de démonstration de la fonction de tri C++"></p> <p><strong>Explication détaillée de la fonction de tri C++ et exemple de démonstration</strong></p> <p><strong>Présentation de la fonction de tri</strong></p> <p>La fonction de tri est une fonction puissante de la bibliothèque de modèles standard C++ (STL), utilisée pour trier les éléments du conteneur. Il organise les éléments d'un conteneur par ordre croissant ou décroissant en fonction de règles de comparaison spécifiées. </p> <p>La fonction est déclarée comme suit : </p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:cpp;toolbar:false;'>template<typename Iter> void sort(Iter first, Iter last);</pre><div class="contentsignin">Copier après la connexion</div></div><p>Où : </p><ul><li><strong>Iter</strong> : Type d'itérateur pointant vers l'élément conteneur, qui peut déplacer et accéder aux éléments dans le conteneur. </li><li><strong>first</strong> : Itérateur de démarrage du conteneur, spécifiant le premier élément de la plage d'éléments à trier. </li><li><strong>last</strong> : Itérateur de fin de conteneur, spécifiant les éléments après le dernier élément de la plage d'éléments à trier. </li></ul><p><strong>Règles de comparaison personnalisées</strong></p><p>Par défaut, la fonction de tri utilise l'opérateur <code><</code> pour la comparaison, ce qui signifie qu'elle trie les éléments du conteneur par ordre croissant. Si vous souhaitez trier selon différentes règles, vous pouvez fournir une fonction de comparaison personnalisée : </p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:cpp;toolbar:false;'>bool compare(const Type1& a, const Type2& b) { // 自定义比较规则 } // 在 sort 函数中使用自定义比较函数 sort(first, last, compare);</pre><div class="contentsignin">Copier après la connexion</div></div><p><strong>Exemple pratique </strong></p><p><strong>Exemple 1 : Tri d'un tableau d'entiers </strong></p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:cpp;toolbar:false;'>#include <iostream> #include <algorithm> using namespace std; int main() { int arr[] = {5, 2, 7, 1, 3}; int len = sizeof(arr) / sizeof(arr[0]); sort(arr, arr + len); cout << "排序后的数组:"; for (int i = 0; i < len; i++) { cout << " " << arr[i]; } cout << endl; return 0; }</pre><div class="contentsignin">Copier après la connexion</div></div><p>Sortie : </p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>排序后的数组: 1 2 3 5 7</pre><div class="contentsignin">Copier après la connexion</div></div><p><strong>Exemple 2 : Tri un tri par tableau de chaînes </strong></p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:cpp;toolbar:false;'>#include <iostream> #include <algorithm> using namespace std; int main() { string arr[] = {"apple", "orange", "banana", "kiwi", "mango"}; int len = sizeof(arr) / sizeof(arr[0]); sort(arr, arr + len); cout << "排序后的数组:"; for (int i = 0; i < len; i++) { cout << " " << arr[i]; } cout << endl; return 0; }</pre><div class="contentsignin">Copier après la connexion</div></div><p>Sortie : </p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>排序后的数组: apple banana kiwi mango orange</pre><div class="contentsignin">Copier après la connexion</div></div>

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal