Jazyk Pascal - Recursion v rámci Shell Sort
Definice
Rekurze ve výpočtech nebo matematických pojmech je metoda definování funkcí, ve kterých je definovaná funkce aplikována v rámci vlastního označení. Termín je také používán více obecně popisovat proces opakování objektů v podobném vzoru.
Implementace
Zde naleznete jednoduchý rekurzivní postup, který vám umožňuje třídit tabulku (n) počtu celých čísel pomocí metody třídění Shell:
Postup Shell_Sort_Rec (Var t: TAB; n, h: integer); Var aux, i: integer; begin Pokud h> 0 Pak Začněte Pokud n> h Začněte Shell_Sort_Rec (t, n - h, h); Pokud t [n]t [i - h]); t [i]: = aux; Konec; Konec; Shell_Sort_Rec (t, n, h Div 3); Konec; Konec;
Poznámky
Je lepší otestovat tento postup u malých tabulek, protože v případě, že počet hovorů bude příliš důležitý, může přetečení omezení zásobníku paměti přidělit rekurzivní funkci. Velikost testovací tabulky můžete zvýšit o zvětšení velikosti zásobníku:
OptioncompilerMemory Settingsstack velikost
- Další informace o algoritmu Shell Sort
- Díky Zouari Lazhar za tento tip