parcourir un tableau aléatoirement
bien le bonjour
mon problème est le suivant :
je dois effectuer un traitement sur toutes les cases d'un tableau mais je ne peux pas parcourir mon tableau case après case.
Ma contrainte est que la case sur laquelle je fais le traitement doit être choisie alétoirement. Et je dois traiter toutes les cases.
En gros, actuellement j'ai mon tableau et un tableau miroir contenant des booléens symbolisant si le traitement a déjà été fait ou non sur la case miroir. Et j'ai un compteur de cases déjà traitées.
j'en suis là
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| TANT QUE mon nombre de cases traitées < nb total de cases à traiter
choisir une case aléatoire
vérifier que cette case n'a pas déjà été traitée en regardant la case miroir.
SI la case choisie a déjà été traitée,
on boucle jusqu'à ce qu'on en trouve une pas encore traitée
FINSI
je fais mon traitement
case miroir = oui.
nombre_de_cases_traitées++
FIN TANT QUE |
mais le gros soucis de cette méthode est que pour les tableaux assez volumineux, il faudra un grand nombre de tours de boucles "dans le vent" pour obtenir les dernières cases qui restent à traiter, il mettra du temps à les trouver ; et bien sûr l'algo prend vite beaucoup de temps.
j'espère m'être fait comprendre.
quelqu'un a-t-il une solution à me proposer ?