[HELP] Tri de tableau en JAVA

Statut
N'est pas ouverte pour d'autres réponses.

KikouzZz

Elite
Salut, j'aurais une petite question en java .

for (compteur1=0; compteur1 < notri.length ; compteur1++)
{
notri[compteur1] = (int)(20*Math.random()+0);

tablo += compteur1+ " " + notri[compteur1]+ "\n";
}
JOptionPane.showMessageDialog (null,tablo);


for ( compteur2=1; compteur2 < notri.length ; compteur2++)
{
for(compteur1=0;compteur1< notri.length-1;compteur1++)
{
if ( notri[compteur1] > notri[compteur1+1] )
{
temp= notri[compteur1];
notri[compteur1]= notri[compteur1+1];
notri[compteur1+1]= temp;
}
}
}

Pourquoi ( au tri ) on commence a compteur2=1 ?
pourquoi ensuite c'est -1 ( compteur1< notri.length-1) ?

Euh, si qq1 serai repondre ca serai sympas, j'ai examens demain et j'ai oublier ce petit detail :roll:
 

zoheir

cvm.mangaleet()
KikouzZz a dit:
pourquoi ensuite c'est -1 ( compteur1< notri.length-1) ?
Si je me trompe pas, l'indice du tableau commence à 0, donc pour parcourir le tableau il faut commencer a 0 jusqu'à la taille-1 du tabl. Puisque length donne la taille du tableau, donc en comptant l'indice 0

KikouzZz a dit:
Pourquoi ( au tri ) on commence a compteur2=1 ?
C'est le principe du tri par insertion.
 
B

Braim

ex membre
Salut,

Pourquoi ne pas utiliser les algo Java pour trier ? C'est plus performant.

Vite fais, mais j'ai pas eu le temps de tester, un truc comme ça ce serait plus rapide et plus performant et plus joli et plus ....

Franchement, à un examen j'éviterai de me casser la tête avec des indices ;)
Code:
public class UneClasse {

	public static void main(String[] args) {
		int []numbers = new int[50];
		Random r = new Random();
		// je remplis mon tableau d'un nombre aléatoire de nombres 
		for(int i = 0;i < 50; i++ ) {
			numbers[i] = r.nextInt(100);
		}
		// je trie le tableau 
		Arrays.sort(numbers);
		// j'affiche le tableau triés
		for(int i = 0;i < 50; i++ ) {
			System.out.println(numbers[i]);
		}
	}
}

<edit> testé et ça marche direct </edit>
 
1er
OP
KikouzZz

KikouzZz

Elite
Braim a dit:
Salut,

Pourquoi ne pas utiliser les algo Java pour trier ? C'est plus performant.

Vite fais, mais j'ai pas eu le temps de tester, un truc comme ça ce serait plus rapide et plus performant et plus joli et plus ....

Franchement, à un examen j'éviterai de me casser la tête avec des indices ;)
Code:
public class UneClasse {

	public static void main(String[] args) {
		int []numbers = new int[50];
		Random r = new Random();
		// je remplis mon tableau d'un nombre aléatoire de nombres 
		for(int i = 0;i < 50; i++ ) {
			numbers[i] = r.nextInt(100);
		}
		// je trie le tableau 
		Arrays.sort(numbers);
		// j'affiche le tableau triés
		for(int i = 0;i < 50; i++ ) {
			System.out.println(numbers[i]);
		}
	}
}

<edit> testé et ça marche direct </edit>
Parceque c'est un truc qu'on a pas encore vu au cours et que je ne conaissais meme pas d'ailleurs ;)
 
B

Braim

ex membre
Ah oki, je comprend mieux. :roll:
 
Il n'empèche qu'il faut être capable de faire un tri simple et rapide "à la main"; histoire de comprendre un peu la logique d'un tri au sens général...

.sort(...) c'est quand on a déjà fait ses preuves ;)
 
T

theodorus

ex membre
...d'où l'intérêt du C? :p
 
B

Braim

ex membre
TITM4v3rick a dit:
Il n'empèche qu'il faut être capable de faire un tri simple et rapide "à la main"; histoire de comprendre un peu la logique d'un tri au sens général...

.sort(...) c'est quand on a déjà fait ses preuves ;)
Ouaip je suis aussi d'accord avec ca.
Faire des tri ça permet de voir comment fontionne les tableaux et les boucles.
 

guslinux

Gamerz'ien
utilise les vecteurs :D
 
Statut
N'est pas ouverte pour d'autres réponses.
Haut