L'algoritmo solitamente ordina la sequenza sul posto. In ogni iterazione, viene rimosso un elemento dalla sottosequenza non ordinata  e "inserito"  nella posizione corretta della sottosequenza ordinata, estendendola così di un elemento. Alla formula_1-esima iterazione, la sequenza già ordinata contiene formula_1 elementi. Si assume che la sequenza da ordinare sia partizionata in una sottosequenza già ordinata, all'inizio composta da un solo elemento, e una ancora da ordinare.