28 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| up::[[structure de données]]
 | |
| #s/informatique/algorithmie
 | |
| 
 | |
| ---
 | |
| Un _arbre binaire de recherche_ est un [[arbre binaire]] particulier.
 | |
| Il est tel que, pour tout noeud $N$ de l'arbre, l'ensemble des descendants à droite de $N$ ont des valeurs supérieures à celles de $N$, et l'ensemble des descentants à gauche de $N$ ont des valeurs inférieures à celles de $N$.
 | |
| 
 | |
| **Note :** On peut inverser la droite et la gauche dans cette définition. Cela équivaut à [[arbre binaire inverse|inverser]] l'arbre.
 | |
| 
 | |
| 
 | |
| # Propriétés
 | |
| ## Complexité des opérations
 | |
| [[complexité algorithmique]]
 | |
| Dans un arbre binaire de recherche avec $n$ noeuds :
 | |
|  - La **recherche** d'un élément
 | |
|      - meilleur cas : $O(1)$
 | |
|      - cas moyen : $O(\log_2 n)$
 | |
|      - pire cas : $O(n)$ si l'arbre n'est pas [[arbre équilibré|équilibré]]
 | |
|  - L'**insertion** d'un nouvel élément
 | |
|      - meilleur cas : $O(1)$
 | |
|      - cas moyen : $O(\log_2 n)$
 | |
|      - pire cas : $O(n)$ si l'arbre n'est pas [[arbre équilibré|équilibré]]
 | |
|  - La **suppression** d'un élément est en $O(\log_2 n)$
 | |
|      - meilleur cas : $O(1)$
 | |
|      - cas moyen : $O(\log_2 n)$
 | |
|      - pire cas : $O(n)$ si l'arbre n'est pas [[arbre équilibré|équilibré]]
 | |
|  - L'**[[arbre binaire inverse|inversion]]** d'un arbre est en $O(n)$
 |