Auto urgent commit.

This commit is contained in:
2025-03-19 09:50:27 +01:00
parent 044de5fb17
commit f77ea36882
3 changed files with 60 additions and 9 deletions

11
perfect_number/main.py Normal file
View File

@@ -0,0 +1,11 @@
import math
def find_diviseur(number):
diviseurs = []
limit = int(number/2)
for i in range(1,limit):
if number %i == 0:
diviseurs.append(i)
return diviseurs
if __name__ == "__main__":
print(find_diviseur(15))

40
trees/AB/arbre.py Normal file
View File

@@ -0,0 +1,40 @@
class Arbre_Binaire(object):
def __init__(self,racine = None, sag = None,sad = None) -> None:
self.racine = racine
self.ss_arbre_gauche = sag
self.ss_arbre_droit = sad
return None
def est_vide(self):
return self.racine is None
def taille(self):
if self.est_vide():
return 1
else:
taille_gauche = self.ss_arbre_gauche.taille() if self.ss_arbre_gauche else 0
taille_droite = self.ss_arbre_droit.taille() if self.ss_arbre_droit else 0
return 1+taille_gauche+taille_droite
def hauteur(self):
if self.est_vide():
return 0
else:
profondeur_gauche = self.ss_arbre_gauche.hauteur() if self.ss_arbre_gauche else 0
profondeur_droite = self.ss_arbre_droit.hauteur() if self.ss_arbre_droit else 0
return 1+max(profondeur_droite,profondeur_gauche)
def affichage(arbre):
pass
if arbre.est_vide():
return ([])
else:
racine = arbre.racine
prefixe = arbre.ss_arbre_gauche
suffixe = arbre.ss_arbre_droit
#todo
if __name__ == "__main__":
arbre = Arbre_Binaire(1, Arbre_Binaire(2), Arbre_Binaire(3))
print("taille arbre :", arbre.taille())
print("hauteur arbre :", arbre.hauteur())

View File

@@ -110,21 +110,21 @@ class Arbre(object):
if not (self.est_vide()):
if self.racine == valeur:
return self
resultat = Arbre()
for ss_arbre in self.ss_arbres:
ss_arbre = Arbre(racine=None, ss_arbres=ss_arbre)
resultat = ss_arbre.rechercher(valeur)
if not (resultat == None):
break
return resultat
resultat = Arbre()
for ss_arbre in self.ss_arbres:
ss_arbre = Arbre(racine=None, ss_arbres=ss_arbre)
resultat = ss_arbre.rechercher(valeur)
if not (resultat == None):
break
return resultat
return Arbre()
def ajouter(self,elt):
if self.est_vide():
return Arbre(racine=elt)
else:
return Arbre(elt,self)
def enlever(self):
def enlever(self,elt):
pass
def display(self):
pass