Dans deux articles, il a été fait mention d'un algorithme dû à Jorgen Gram et Erhard Schmidt. Une base quelconque d'un espace vectoriel euclidien E étant donnée, cette méthode permet de construire une nouvelle base, orthonormée cette fois, telle qu'à chaque étape, le sous-espace vectoriel engendré par les k premiers vecteurs de la première base soit aussi celui engendré par ceux de la seconde.
Pour construire d'abord cette base orthogonale {L0, L1, L2, L3, …}, l'idée de la méthode de Gram-Schmidt est fondée sur la récurrence. Mettons-la en œuvre sur l'exemple de la construction des polynômes de Legendre à partir de la base {1, x, x2, x3, …, xn}.
On suppose les éléments Li de la base construits pour i égal à 1, 2… n – 1, et on cherche Ln comme somme du monôme xn et d'une combinaison linéaire de L0, L1… Ln–1. La détermination des coefficients se fait en écrivant que le polynôme Ln est orthogonal à L0, L1… Ln–1.
De proche en proche, on trouve L0(x) = 1, L1(x) = x, L2(x) = x2 – 1 / 3 et L3(x) = x3 – 3x / 5…
En divisant ces polynômes par leur norme, on obtient une base orthonormée.