<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!