Menu de tris (tri bulle, selection, permutation, comptage)

Soyez le premier à donner votre avis sur cette source.

Snippet vu 27 918 fois - Téléchargée 27 fois

Contenu du snippet

ce code il va vous permettre de manipuler ces tris avec un menu de choix et en l'aide des procedures.
j'espere que ce code repondra a vous besoins

Source / Exemple :


import java.io.*;
public class MenuTri
{
static int i,taille;	
	public static void main(String[]args)throws IOException
	{
		BufferedReader valeur=new BufferedReader(new InputStreamReader(System.in));
		System.out.println("\t\t\t\t\t\t****un menu de tri****");
		System.out.print("Donnez la longueur du Tableau:\t\t");
  	   	taille=Integer.parseInt(valeur.readLine());
  	   	
  	   	int T[]=new int[taille];
  	   	
  	   	remplir(T);
  	   	System.out.println("***tableau non trie***\n");
  	   	afficher(T);
		
		System.out.println("\t\t\t\tentrer votre choix ");
		System.out.println("*****tri bulle=1/tri par selection=2/tri par permutation=3/tri par   comptage=4*****\n");
  	   	int menu =Integer.parseInt(valeur.readLine());
  	   	
  	   	switch(menu)
  	   	{
  	   		case 1:
  	   		{
  	   		System.out.println("vous avez choisis le tri bulle\n");
  	   		tribulle(T);
  	   		System.out.println("tableau est trie\n");
  	   		afficher(T);
  	   		}
  	   		break;
  	   		case 2:
  	   		{
 			System.out.println("vous avez choisis le tri par selection\n");
			triparselection(T); 
			System.out.println("tableau est trie\n"); 	   			
			afficher(T);
			

  	   		}	
  	   		break;
  	   		case 3:
  	   		{
  	   		System.out.println("vous avez choisis le tri par permutation\n");
			triparpermutation(T); 
			System.out.println("tableau est trie\n"); 	   		
			afficher(T);
  	   		}
  	   		break;
  	   		case 4:
  	   		{
  	   		System.out.println("vous avez choisis le tri par comptage\n");
  	   		triparcomptage(T);
  	   		}
  	   		break;
  	   		default:
  	   		System.out.println("erreur\n");
  	   		break;
  	   	}	
  	   		
   }
  	  static  void 	tribulle(int T[])
  	  {
  	  	 boolean permut;
  	  	 int inter;
  	  	
  	  	do
		{
			permut=false;	
		for(int i=0;i<taille-1;i++)
					{		
		
			if(T[i]>T[i+1])
			{
				inter=T[i];
				T[i]=T[i+1];
				T[i+1]=inter;
				permut=true;
			
			}
			
				
					}
		}
			while(permut!=false);
			
}
static void triparselection(int T[])
{
	int k=0,inter,pp;
	for(int j=0;j<taille-1;j++)
	{
			  pp=T[j];
			
		for(int i=j;i<taille;i++)	
		{
		   if(T[i]<pp)
		   {
		
		      pp=T[i];
		      k=i;	
		
	          inter=T[j];
	          T[j]=pp;
	          T[k]=inter;
		   }
		}
	}
}
static void triparpermutation(int T[])	
{
	int i,s=0,k;
	int nb [] = new int [taille];
	int res [] = new int [taille];
	for(i=0;i<taille;i++)
		{
			for(k=0;k<taille;k++)
			{
				if(T[i]>T[k])
				{
					s++;
					
				}
				nb[i]=s;
			}
				
				
				res[s]=T[i];
				s=0;
		}	
			
			for( i=0;i<taille;i++)
			{
				T[i]=res[i];
			}
			
			for(i=0;i<taille;i++)
			{
				System.out.println(T[i]+"");
			}	
			
}
static void triparcomptage(int T[])	
{
	int i,s=0,k;
	int nb [] = new int [taille];
	int res [] = new int [taille];
	for(i=0;i<taille;i++)
		{
			for(i=0;i<taille;i++)
		{
			for(k=0;k<taille;k++)
			{
				if(T[i]>T[k])
				{
					s++;
					
				}
				nb[i]=s;
			}
				
				
				res[nb[i]]=T[i];
				s=0;
		}	
			
			
			System.out.println("***tableau est trie***\n");
			for(i=0;i<taille;i++)
			{
				System.out.println(res[i]+"");
			}	
			
		}	
}
static void remplir(int T[]) throws IOException
  	 {
  	 		for(int i=0;i<taille;i++)
		{
			BufferedReader valeur=new BufferedReader(new InputStreamReader(System.in));
			System.out.print("Entrer un nombre\t");
			String nombre2 =valeur.readLine();
			T[i] = Integer.parseInt(nombre2);
			System.out.print("\n");	
		} 
	}
static void afficher(int T[])
	{
		for(int i=0;i<taille;i++)
		{
		System.out.println(T[i]+"\n \t\n");	
		}
	}
}

A voir également

Ajouter un commentaire Commentaires
adoola10 Messages postés 1 Date d'inscription lundi 5 avril 2010 Statut Membre Dernière intervention 17 mars 2010
17 mars 2010 à 19:49
merci
robertjul Messages postés 15 Date d'inscription mardi 3 mars 2009 Statut Membre Dernière intervention 26 juin 2009
20 janv. 2009 à 11:03
Merci beaucoup pour cette aide!
maelob Messages postés 943 Date d'inscription mardi 14 novembre 2006 Statut Membre Dernière intervention 7 août 2009 3
7 nov. 2008 à 16:14
Merci :-)
sghchafaa Messages postés 104 Date d'inscription mardi 27 novembre 2007 Statut Membre Dernière intervention 16 juillet 2010
27 nov. 2007 à 22:04
c'est un super programme merci bien monsieur imadinho88;;
mais si je peut y demander,, pouver vs le traduire en C

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.