tri

tri - Java - Programmation

Marsh Posté le 16-05-2003 à 21:40:42    

j'ai un IndexOutOfBoundException
 

Code :
  1. public  void heapsort(int tab[]){
  2.     int left,right, index, x;
  3.     left = tab.length / 2 + 1;
  4.     right = tab.length;
  5.     while(right > 1){
  6.       left--;
  7.       ajuster(tab, left, right);
  8.     }
  9.     for(index=right; index >= 1; index--){
  10.       x = tab[1];
  11.       tab[1] = tab[index];
  12.       tab[index] = x;
  13.       ajuster(tab,1,index-1);
  14.     }
  15.   }
  16.   public  void ajuster(int tab[],int left, int right){
  17.     int i, j, x;
  18.     i=left;
  19.     j = 2 * left;
  20.     x = tab[i];
  21.     if ((j < right) && (tab[j+1] > tab[j]) )
  22.       j++;
  23.     while((j<=right) && (tab[j])>x) {
  24.       tab[i] = tab[j];
  25.       i = j;
  26.       j = j*2;
  27.       if((j<right) && (tab[j+1] > tab[j])  )
  28.         j++;
  29.     }
  30.     tab[i] = x;
  31.   }

Reply

Marsh Posté le 16-05-2003 à 21:40:42   

Reply

Marsh Posté le 16-05-2003 à 22:02:48    

tu sais qu'il y a des methodes toutes faites pour faire des tris en java? :heink:
 
 
et puis vu comment tu maitrises les array (voir ton autre topic), m'étonne pas que tu aies un array-out-of-bound [:spamafote]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 16-05-2003 à 22:03:08    

t'as encore initialisé ton tableau "dynamique"? [:rofl]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 16-05-2003 à 22:05:47    

comme r--, passe par les tris tout faits... ils sont optimisés et fonctionnent plutôt bien... sauf si c'est pour un exo de cours :D


---------------
A straight line is a special case of a curve. It's a curve which is uncurved. -- Susskind.
Reply

Marsh Posté le 17-05-2003 à 13:09:10    

okeefe a écrit :

Code :
  1. while(right > 1){
  2.       left--;
  3.       ajuster(tab, left, right);
  4.     }




Ca serait pas une boucle infinie ca ?

Reply

Marsh Posté le 17-05-2003 à 13:51:34    

the real moins moins a écrit :

t'as encore initialisé ton tableau "dynamique"? [:rofl]


 
 [:xp1700]


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 17-05-2003 à 17:51:52    

R3g a écrit :


Ca serait pas une boucle infinie ca ?

On dirait bien.


---------------
Le site de ma maman
Reply

Marsh Posté le 18-05-2003 à 02:39:57    

quels sont les classes qui font des tris?

Reply

Marsh Posté le 18-05-2003 à 07:52:27    

veryfree a écrit :

quels sont les classes qui font des tris?


java.util.Collections. Avec le 's' à la fin.


---------------
Le site de ma maman
Reply

Marsh Posté le 18-05-2003 à 15:24:18    

java.util.Arrays aussi :o
d'ailleurs les methodes sort de Collections (du moins certains), font appel au toArray de la collection, puis font le tri avec les methodes d'Arrays :o


Message édité par the real moins moins le 18-05-2003 à 15:24:49

---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 18-05-2003 à 15:24:18   

Reply

Marsh Posté le 18-05-2003 à 15:25:22    

merci a vous deux pour ces precisions :o

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed