La transformation suppose la suppression de la structure itératif « for ». Toutefois, pour exécuter notre tri, il est nécessaire d'avoir dans la fonction :
Une condition (i<n-1).
La récursivité nécessite une condition d'arrêt.
Une variable locale i (int i) pour le cont.
Non, une variable locale i, ne possédant pas de valeur initiale, ne permettra pas d'exercer un contrôle sur la récursion où, à chaque étape, nous utilisons une nouvelle variable.
Une itération (++i).
C'est l'instruction qui permet de réduire le domaine jusqu'au cas trivial qui est « un tableau d'une donnée est trié ».
Une valeur de départ (i=0).
Cette valeur de départ ne peut être donnée dans le code récursif.
Un paramètre supplémentaire (int i).
C'est par l'intermédiaire du paramètre que sera contrôler la récursivité.