ajout images programme terminale + fichier python dichotomie recursive
This commit is contained in:
@@ -1,7 +1,11 @@
|
||||
|
||||
# Diviser pour régner
|
||||
|
||||
##
|
||||
### Le programme
|
||||
|
||||
<img src="../assets/bo_diviser.png" alt="bo_diviser.png" style="zoom: 50%;" />
|
||||
|
||||
|
||||
|
||||
> La méthode **diviser pour régner** est une approche algorithmique puissante, souvent utilisée pour résoudre des problèmes complexes de manière récursive. Cette stratégie consiste à diviser un problème en sous-problèmes plus petits, à résoudre chaque sous-problème indépendamment, puis à combiner les solutions pour obtenir la solution finale du problème d'origine.
|
||||
|
||||
@@ -113,7 +117,7 @@ L'algorithme de tri fusion a une complexité en temps de **O(n log n)**, où `n`
|
||||
### Inconvénients :
|
||||
- **Utilisation de mémoire** : Le tri fusion nécessite de l'espace mémoire supplémentaire pour stocker les sous-listes, ce qui peut être un inconvénient dans des contextes où la mémoire est limitée.
|
||||
|
||||
##
|
||||
|
||||
|
||||
La méthode **diviser pour régner** est une approche puissante et efficace pour résoudre des problèmes complexes, et le **tri fusion** en est un exemple emblématique. Comprendre cette méthode permet de mieux appréhender la récursivité et la manière dont des problèmes peuvent être résolus en plusieurs étapes.
|
||||
|
||||
|
||||
10
Recursivité/Diviser_pour_regner/dichotomie_recursive.py
Normal file
10
Recursivité/Diviser_pour_regner/dichotomie_recursive.py
Normal file
@@ -0,0 +1,10 @@
|
||||
def recherche(tab:list,x:int)-> bool:
|
||||
if len(tab) == 0:
|
||||
return False
|
||||
m = len(tab) // 2
|
||||
if tab[m] == x:
|
||||
return True
|
||||
elif tab [m] < x:
|
||||
return recherche(tab[m+1 :],x)
|
||||
else:
|
||||
return recherche(tab[:m],x)
|
||||
Reference in New Issue
Block a user