Je dáno pole
A. obsahující
N prvků. Výsledkem třídění v místě je přerovnání prvků pole
A. takovým způsobem, že platí
A.1<=A.2<=...<=A.N
Nejprve přerovnáme prvky pole aby všechny prvky s posunutím
H.1 byly utříděné. Pak je přerovnáme tak, aby byly utříděné prvky s posunutím
H.2 (
H.1>H.2) atd. až nakonec utřídíme celé pole (tj. utřídíme všechny prvky s posunutím jedna). D. L. Shell, autor algoritmu, doporučil počáteční volbu
H=N%2 a dále pak užití vzorce
H=H%2. Posloupnost
H., která se v praxi nejlépe osvědčuje, je
H=...,1093,364,121,40,13,4,1
tj. H = (3**K-1)/2, generováno vzorcem H=3*H+1 s počáteční hodnotou H=1. Časová složitost tohoto algoritmu je v nejhorším případě O(N**(3/2); v průměru pak O(N**1.25).
Následující tabulka porovnává 4 algoritmy třídění. Pole A. obsahuje celá čísla z intervalu 1 až Max, kde Max=10,100,1000,40000.