Stl : trier un tableau c'est une ligne de code

Soyez le premier à donner votre avis sur cette source.

Snippet vu 8 945 fois - Téléchargée 33 fois

Contenu du snippet

Trier un tableau avec sort() de la STL.

Afficher à l'écran un tableau, c'est une ligne de code avec copy() de la STL
et une ligne pour la déclaration d'un itérateur.

Source / Exemple :


//--------  Utiliser la STL pour trier un tableau  ----------
//              Trier un tableau avec sort()
//             Afficher à l'écran avec copy()
//-----------  David Saint-Mellion  13/01/2003  ------------

#include <conio.h>	// pour getch()

#include <iostream>		
#include <algorithm>	// pour sort() et copy()
using namespace std;

int main(void) {
  	int data[10]={80,81,96,97,0,82,89,90,90,97};
	// Itérateur adaptateur flux de données ios
	// Permet de gérer l'écran par copy() de la STL
	ostream_iterator<int> ecran(cout," ");

	cout<< "Tableau non TRIE"<<endl;
	// Affiche le tableau non Trié
	copy(data,data+10,ecran);
	// Trie le tableau
	sort(data,data+10);
	cout<<endl<<"Tableau TRIE"<<endl;
	// Affiche le tableau Trié
	copy(data,data+10,ecran);
	getch();

	return 0;
}

// --------  Résultat de l'exécution -----
//  Tableau non TRIE
//  80 81 96 97 0 82 89 90 90 97
//  Tableau TRIE
//  0 80 81 82 89 90 90 96 97 97
// ---------------------------------------

A voir également

Ajouter un commentaire

Commentaires

trinitacs
Messages postés
249
Date d'inscription
mardi 16 juillet 2002
Statut
Membre
Dernière intervention
7 août 2003
1 -
Tu aurais pu utiliser vector :)
cs_davidsm
Messages postés
35
Date d'inscription
lundi 6 janvier 2003
Statut
Membre
Dernière intervention
12 novembre 2004
-
Ok, tu as complètement raison.
En vrai C++, il faudrait dans beaucoup de situation remplacer les tableaux par un conteneur simple du type « vector » ou « deque ». L'idée, du source déposé, est de montrer que la STL est avantageuse à partir d'un cas simple en prolongement du C.
Proposes des cas simples de mise en ?uvre de la STL.

Il serait logique que sur le site cppfrance.com il y est une rubrique STL

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.