Tri rapide

Fermé
zmandar - 23 nov. 2010 à 20:34
 zmandar - 23 nov. 2010 à 23:46
Bonjour,



je créé un programme et je fait une diffusion entre les types de retour
svp quelqu'un m 'aider à corriger
je veux que cette methode (void triRapide(int tableau[],int deb,int fin)) retour un
package projet;


import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;

public class fichierrapide1
{
private static int traceA, traceB;

//*******************************************************************

private static void fichier(int taille, String nomFichier) throws IOException
{
BufferedWriter out = new BufferedWriter(
new FileWriter(
new File(nomFichier),true
)
);

out.write(taille+"\t"+traceA+"\t"+traceB);
out.newLine();
out.close() ;
}

//*******************************************************************

public static int[] random(int T[],int taille)
{


int i=0;
for( i=0;i<taille;i++){

T[i]=(int)(Math.random() *(512-2)+2);}
return T;


}
//**********************************************************************

public static int [] triRapide(int tableau[],int taille)
{

return( triRapide(tableau,0,longueur-1));
}

private static int partition(int tableau[],int deb,int fin)
{int cn=0;
int an=0 ;
int compt=deb;
int pivot=tableau[deb];

for(int i=deb+1;i<=fin;i++)
{traceA++;
if (tableau[i]<pivot)
{traceB++ ;
compt++;
echanger(tableau,compt,i);
}
}
echanger(tableau,deb,compt);
traceB++ ;
return(compt);
}
//*************************************************************************************

private static void triRapide(int tableau[],int deb,int fin)
{
if(deb<fin)
{
int positionPivot=partition(tableau,deb,fin);
triRapide(tableau,deb,positionPivot-1);
triRapide(tableau,positionPivot+1,fin);
}}
//***************************************************************************

public static void echanger(int tableau[],int l,int k){
int aux=0;
int j=k,i=l;
aux=tableau[i];
tableau[i]=tableau[j];
tableau[j]=aux; }


//*******************************************************************************

private static void afficher(int[] tab)
{
for (int i=0; i<tab.length; i++)
System.out.print(tab[i]+" ");
System.out.println();
}
//********************************************************************************

private static void test(int i, String nomFichier) throws IOException
{
int[] T=new int[i];
random(T,i);

traceA=0; traceB=0;
afficher(triRapide(T[]));

fichier(i,nomFichier);
}
//*********************************************************************************

public static void main (String []args) throws IOException
{
for (int i=2; i<512; i++)
test(i,"C:\\tri-rapide-qcque.txt");
}}
tableau
A voir également:

2 réponses

aide moi svp
0
svp aide moi
0