Tri par selection: exemple avec alloc dynamique

Soyez le premier à donner votre avis sur cette source.

Snippet vu 6 979 fois - Téléchargée 27 fois

Contenu du snippet

c est un exemple de tri par la methode de tri par selection

Source / Exemple :


#include <iostream>
#include <stdlib.h>
using namespace std;

void TriSelection(long* Tab,long TailleTab)
{
 long Idebut,Ipetit,Buffer,Iparcours;
 for(Idebut=0;Idebut<TailleTab-1;Idebut++)
 {
  Ipetit=Idebut;
  for(Iparcours=Idebut+1;Iparcours<TailleTab;Iparcours++)
  {
   if(Tab[Ipetit]>Tab[Iparcours])
   {
    Ipetit=Iparcours;
   }
  }
  Buffer=Tab[Ipetit];
  Tab[Ipetit]=Tab[Idebut];
  Tab[Idebut]=Buffer;
 }
}

int main(void)
{
 long *Tab;
 long taille=10;
 cout<<"Entrez le nombre d'entiers a trier que va contenir le tableau"<<endl;
 cin>>taille;
 Tab= (long *)malloc(taille * sizeof(long));
 if(Tab==NULL)
 {
  cout<<("Echec de l'allocation memoire");
 }
 else
 {
  for(long index=0;index<taille;index++)
  {
   cout<<"Entrez l'element de la case "<<index<<" : ";
   cin>>Tab[index];
  }
  TriSelection(Tab,taille);
  cout<<"Voici le tableau trie:"<<endl;
  for(long index=0;index<taille;index++)
  {
   cout<<Tab[index]<<endl;;
  }
 }
 free(Tab);
 system("PAUSE");
 return 0;
}

A voir également

Ajouter un commentaire

Commentaires

morgandetoi06
Messages postés
389
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
17 décembre 2004
1 -
merci, j ai mit la source à jour
cs_Kaid
Messages postés
949
Date d'inscription
mardi 2 octobre 2001
Statut
Membre
Dernière intervention
8 juillet 2006
-
Tu as oublié de libérer la mémoire allouée pour malloc().

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.