Et que penser des structures?
Salut,
Pourquoi ne pas se baser sur une strucutre pour les coordonnées de ton point?
En effet, la position X ne peut pas etre utilisée sans la position y pour déterminer ton point...
Tu crées donc une structure du genre de
Code:
1 2 3 4 5 6
|
struct Point
{
double X;//en adaptant le type en fonction de tes besoins
double Y;
}; |
et tu utilise un seul tableau (ou un seul vecteur) pour maintenir la liste de tes points...
std::sort, sauf erreur, va trier ton tableau de X en fonction des valeurs qu'il contient, et meme chose pour le tableau de Y...
Si le malheur veut (et la loi de murphy nous dit que cela arrivera fatalement) qu'une coordonnée Y d'un point soit plus petite que celle d'un autre alors que la coordonnée X du point est plus grande que celle de l'autre, le tri produira deux points qui n'auront plus rien à voir avec ceux qui ont été introduits à la base...
Exemple: Si tu as les tableaux de X et de Y suivant:
Code:
1 2 3
|
X[]={20,15,10};
Y[]={5,6,4}; |
une fois triés, le point 1 sera 10/4, le deux 15/5 et le trois 20/6, alors qu'à la base, ils étaient respectivement 20/5, 15/6 et 10/4...
Le fait de trier un tableau de structure telle que je te la présente (quitte à prévoir une fonction de comparaison) permettra de garder les valeurs correctes ;)