Étienne9 Posté(e) le 28 octobre 2012 Signaler Posté(e) le 28 octobre 2012 Bonjour à vous les matheux, je suis en 2ème année en Informatique et j'ai besoin de vos compétences de maths. En effet, je dois calculer la hauteur minimale d'un arbre binaire. Voilà ce que j'ai fait : Nombre d'élément__________hauteur 1________________________0 2________________________1 3________________________1 4________________________2 5________________________2 6________________________2 7________________________2 8________________________3 9________________________3 10_______________________3 . . . 15_______________________3 16_______________________4 Constat La hauteur change dès le nombre l'éléments dépasse un 2^x et à ce moment là, la hauteur vaux X. Exemple avec 4 éléments -> 4 = 2^2 donc hauteur 2 Exemple avec 8 éléments -> 8 -> 2 ^3 donc hauteur 3 Conclusion : 2^x = y avec y la hauteur et 2^x qui représente le nombre d'éléments. D'où on calcule : 2^x = y ln(2^x) = ln(y) x*ln(2) = ln(y) x = ln(y) / ln(2) Problème : cela ne fonctionne que si le nombre d'éléments est une puissance de 2. Quelqu'un peut m'aider s'il vous plaît ? Merci beaucoup à vous les matheux
E-Bahut Boltzmann_Solver Posté(e) le 28 octobre 2012 E-Bahut Signaler Posté(e) le 28 octobre 2012 Bonsoir, Si j'ai bien compris, tu veux une fonction qui te donne la hauteur de ton arbre, c'est bien ça ? Si oui, il suffit d'utiliser la partie entière. f(x) = E(ln(x)/ln(2)). Ex : f(5) = E(2.32) = 2
Étienne9 Posté(e) le 28 octobre 2012 Auteur Signaler Posté(e) le 28 octobre 2012 Bonjour, Merci beaucoup, c'est super cool ! En fait j'avais trouvé ça et j'ai pensé à la partie entière ou à l'arrondissement mais j'ai dû faire des erreurs de calculs, du coup, ça ne marchait pas. Merci !
E-Bahut Boltzmann_Solver Posté(e) le 28 octobre 2012 E-Bahut Signaler Posté(e) le 28 octobre 2012 Bonjour, Merci beaucoup, c'est super cool ! En fait j'avais trouvé ça et j'ai pensé à la partie entière ou à l'arrondissement mais j'ai dû faire des erreurs de calculs, du coup, ça ne marchait pas. Merci !
Étienne9 Posté(e) le 28 octobre 2012 Auteur Signaler Posté(e) le 28 octobre 2012 Oui, j'ai bien compris. En fait on laisse tomber les chiffres après la virgule
E-Bahut Boltzmann_Solver Posté(e) le 28 octobre 2012 E-Bahut Signaler Posté(e) le 28 octobre 2012 Oui, j'ai bien compris. En fait on laisse tomber les chiffres après la virgule
Messages recommandés
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.