13-Vyhledavani
Níže je uveden pouze náhled materiálu. Kliknutím na tlačítko 'Stáhnout soubor' stáhnete kompletní formátovaný materiál ve formátu PDF.
obsazené, metoda počítá další pozice, dokud se nenajde volná pozice
nebo se nezjistí, že tabulka je již zcela zaplněná.
• Lineární hledání volné pozice
• Nové pozice se počítají pomocí funkce: 𝐻 𝑥, 𝑖 = ℎ 𝑥 + 𝑖 𝑚𝑜𝑑 𝑚,
kde 𝑖 je celočíselný parametr 𝑚 je počet řádků tabulky.
• Vede k vytváření nežádoucích shluků.
Otevřené adresování
• Kvadratické vyhledávání volné pozice
•
𝐻 𝑥, 𝑖 = ℎ 𝑥 + 𝑖2 𝑚𝑜𝑑 𝑚
• Shluky sice vznikají, ale v menší míře.
• Může nastat problém, že během hledání volného řádku se můžeme znovu
dostat na stejnou pozici, aniž jsme prošli celou tabulku.
Vyhledávání v hašovací tabulce
1. Vypočteme hodnotu hašovací funkce pro hledaný prvek 𝑥.
2. Podíváme se na řádek, který určila hodnota hašovací funkce. Mohou
nastat tyto případy:
a) Řádek je prázdný – hledaný prvek není v tabulce.
b) Na řádku je hledaný prvek – vyhledávání končí úspěchem.
c) Na řádku je jiný prvek než 𝑥. Postupně počítáme další možné řádky a
srovnáváme prvky na nich s hledaným prvkem 𝑥 dokud:
i.
Hledaný prvek nenajdeme - vyhledávání končí úspěšně.
ii.
Nedostaneme se na prázdný řádek - hledaný prvek není v tabulce.
iii.
Nevyčerpáme všechny možné pozice - hledaný prvek není v tabulce.