def trouve(self, data):
    # Si la donnée correspond à la donnée courante
    if data == self.data:
        return self

    # Si la donnée est inférieure à la donnée courante et qu'il y a un sous-arbre gauche
    if data < self.data and self.left is not None:
        return self.left.trouve(data)

    # Si la donnée est supérieure à la donnée courante et qu'il y a un sous-arbre droit
    if data > self.data and self.right is not None:
        return self.right.trouve(data)

    # Si la donnée n'est pas trouvée
    return None
