Bonjour,
Ma question va être simple, j'ai eu un exercice il n'y à pas très longtemps sur le tri rapide avec cet exemple :
Ici le pivot est le premier élément donc 3. J'ai bien compris le principe du tri rapide et j'arrive à appliquer ce dernier sur cet exemple, mais jusqu'à un certains moment.3 5 1 6 8 11 2 4 9 10
Par exemple ici mon curseur montant stop à la valeur 5, car 5 est plus grand que le pivot 3. Quand à mon curseur descendant il ne s'arrête pas à 10 car cette valeur n'est pas plus petite que mon pivot 3, pas à 9 non plus, pareille pour 4. Par contre il s'arrête à 2 car cette valeur est plus petite que mon pivot. Nous échangeons les valeurs 5 et 2. Nous avons donc ce nouveau tableau.
Ensuite nous refaisons la même procédure, mais ce que je ne comprend pas c'est que je bloque à la valeur 6. En effet le curseur montant est dessus mais vu que de l'autre coté il n'y a pas de valeurs plus petite pour le curseur descendant je ne peux pas l'échanger. Que dois je faire alors ?3 2 1 6 8 11 5 4 9 10
Veuillez m'excuser pour les explications confuses.
Partager