Si j'ai une chaîne, existe-t-il une fonction intégrée pour trier les caractères ou devrais-je écrire le mien?
par exemple:
string Word = "dabc";
Je voudrais le changer pour que:
string sortedWord = "abcd";
Peut-être que l'utilisation de char est une meilleure option? Comment ferais-je cela en C++?
Il y a n algorithme de tri dans la bibliothèque standard, dans l'en-tête <algorithm>
. Cela se fait sur place, donc si vous procédez comme suit, votre mot d'origine sera trié.
std::sort(Word.begin(), Word.end());
Si vous ne voulez pas perdre l'original, faites d'abord une copie.
std::string sortedWord = Word;
std::sort(sortedWord.begin(), sortedWord.end());
std::sort(str.begin(), str.end());
Voir ici
Vous devez inclure sort
la fonction qui est dans algorithm
le fichier d'en-tête qui est un bibliothèque de modèles standard dans c ++.
Utilisation : std :: sort (str.begin (), str.end ());
#include <iostream>
#include <algorithm> // this header is required for std::sort to work
int main()
{
std::string s = "dacb";
std::sort(s.begin(), s.end());
std::cout << s << std::endl;
return 0;
}
SORTIE:
abcd