Source: http://dbenmerzoug.e-monsite.com/medias/files/algo-chapitre-4.pdf