-
Arbre Quaternaire C++
salut les gars, bon j'ai un ptit probleme, j'espere que vous pourriez m'aider :)
disons que j'ai une matrice (une grille) disons 120x120 cellules, et chaque cellule contient une valeur booleenne .. vrai ou faux
dans un fichier text j'ai les indices des cellules qui ont la valeur VRAI, je dois representer cette matrice en un arbre quaternaire.
le probleme est que je sais comment faire la structure general de l'arbre mais je n'arrive pas a trouver une facon facile a associer chaque cellule a un noeud.
exemple:
contenu du fichier texte :
1 1
5 27
67 4
cela veut dire que la cellule [1][1] est vraie ainsi que les cellules [5][27] et
[67][4], bon ma question est la suivante :
comment savoir quel noeud de l'arbre reprensente la cellule[5][27] par exemple ???
mon arbre quaternaire a 4 fils (biensure)
racine->(fils1, fils2, fils3, fils4) et chaque fils(i)->(filsi1, filsi2, filsi3, filsi4) .....
si qqun pourrait me donner une idee ca serait parfait ...
merci encore.
-
Sur le coup, je vois assez facilement comment représenter par un arbre quaternaire une matrice dont la taille est une puissance de deux (et comme il s'agit de matrice creuse, on peut toujours arrondir à la puissance de deux supérieure).
Donc, je conseille un truc du genre regarder bit par bit dans les coordonnées dans quelle sous-matrice on doit aller.
-
Le mot clé dont tu as besoin pour trouver des infos pertinentes c'est quadtree
-
merci les gars pour vos reponses