9. előadás. A táblázat. A táblázatról általában, soros, önátrendező, rendezett és kulcstranszformációs táblázat

Hasonló dokumentumok
Táblázatok fontosabb műveletei 1

Adatszerkezetek 1. előadás

Tuesday, March 6, 12. Hasító táblázatok

Kulcs transzformációs táblázat

10. előadás Speciális többágú fák

Egyirányban láncolt lista

Struktúra nélküli adatszerkezetek

Önszervező bináris keresőfák

Adatszerkezetek 2. Dr. Iványi Péter

6. előadás. Kiegyensúlyozottság, AVL-fa, piros-fekete fa. Adatszerkezetek és algoritmusok előadás március 6.

Algoritmuselmélet. Hashelés. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem

Algoritmuselmélet. Hashelés. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem

Hasító táblázatok. Hasító függvények, kulcsütközés kezelése. Programozás II. előadás. Szénási Sándor

Algoritmuselmélet 6. előadás

Adatszerkezetek Hasító táblák. Dr. Iványi Péter

Adatszerkezetek I. 6. előadás

Programozás II. előadás

Adatszerkezetek Adatszerkezet fogalma. Az értékhalmaz struktúrája

15. tétel. Adatszerkezetek és algoritmusok vizsga Frissült: január 30.

Adatszerkezetek és algoritmusok

Láncolt listák. Egyszerű, rendezett és speciális láncolt listák. Programozás II. előadás. Szénási Sándor

Algoritmusok és adatszerkezetek I. 5. előadás

Haladó rendezések. PPT 2007/2008 tavasz.

Algoritmusok és adatszerkezetek 2.

A programozás alapjai előadás. [<struktúra változó azonosítók>] ; Dinamikus adatszerkezetek:

Adatszerkezetek I. 7. előadás. (Horváth Gyula anyagai felhasználásával)

17. A 2-3 fák és B-fák. 2-3 fák

Elemi adatszerkezetek

Amortizációs költségelemzés

Programozás alapjai 9. előadás. Wagner György Általános Informatikai Tanszék

end function Az A vektorban elõforduló legnagyobb és legkisebb értékek indexeinek különbségét.. (1.5 pont) Ha üres a vektor, akkor 0-t..

Adatszerkezetek. Nevezetes algoritmusok (Keresések, rendezések)

Speciális adatszerkezetek. Programozás alapjai II. (8. ea) C++ Tömbök. Tömbök/2. N dimenziós tömb. Nagyméretű ritka tömbök

Programozás alapjai II. (7. ea) C++ Speciális adatszerkezetek. Tömbök. Kiegészítő anyag: speciális adatszerkezetek

Algoritmusok és adatszerkezetek I. 1. előadás

adatszerkezetek 2007/7/6 15:51 page 27 #23

Láncolt Listák. Adat1 Adat2 Adat3 ø. Adat1 Adat2 ø Adat3

Kiegészítő részelőadás 1. Az algoritmusok hatékonyságának mérése

Rendezések. Összehasonlító rendezések

Programozás alapjai II. (7. ea) C++

Ugrólisták. RSL Insert Example. insert(22) with 3 flips. Runtime?

4. Előfeltételek (ha vannak) 4.1 Tantervi Nincs 4.2 Kompetenciabeli Elemi algoritmusok ismerete

Algoritmusok és adatszerkezetek gyakorlat 07

B-fa. Felépítés, alapvető műveletek. Programozás II. előadás. Szénási Sándor.

17. előadás: Vektorok a térben

Algoritmusok és adatszerkezetek II.

Láncolt listák Témakörök. Lista alapfogalmak

A számítástudomány alapjai. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem

Gráfok 2. Legrövidebb utak, feszítőfák. Szoftvertervezés és -fejlesztés II. előadás. Szénási Sándor

Adatszerkezetek I. 8. előadás. (Horváth Gyula anyagai felhasználásával)

1.előadás Tornai Kálmán

Programozási segédlet

Adatszerkezetek és algoritmusok

Informatika szigorlat 9-es tétel: Az adatbázis-kezelő rendszerek fogalmai

Tartalom Keresés és rendezés. Vektoralgoritmusok. 1. fejezet. Keresés adatvektorban. A programozás alapjai I.

Algoritmusok és adatszerkezetek gyakorlat 06 Adatszerkezetek

7. előadás. Gyorsrendezés, rendezés lineáris lépésszámmal. Adatszerkezetek és algoritmusok előadás március 6.

RSA algoritmus. P(M) = M e mod n. S(C) = C d mod n. A helyesség igazoláshoz szükséges számelméleti háttér. a φ(n) = 1 mod n, a (a 1,a 2,...

Keresés és rendezés. A programozás alapjai I. Hálózati Rendszerek és Szolgáltatások Tanszék Farkas Balázs, Fiala Péter, Vitéz András, Zsóka Zoltán

Függvények növekedési korlátainak jellemzése

Adatbáziskezelés. Indexek, normalizálás NZS 1

Térinformatikai adatszerkezetek

A lista adatszerkezet A lista elemek egymásutániságát jelenti. Fajtái: statikus, dinamikus lista.

Pásztor Attila. Algoritmizálás és programozás tankönyv az emeltszintű érettségihez

Hierarchikus adatszerkezetek

Adatszerkezetek 7a. Dr. IványiPéter

Algoritmusok bonyolultsága

Bevezetés a programozásba. 5. Előadás: Tömbök

Buborékrendezés: Hanoi Tornyai: Asszimptótikus fv.ek: Láncolt ábrázolás: For ciklussal:

1. előadás. számításokban. Adatszerkezetek és algoritmusok előadás február 12. Kósa Márk, Pánovics János, Szathmáry László és Halász Gábor

Komputeralgebrai Algoritmusok

19. Hasításos technikák (hash-elés)

5. SOR. Üres: S Sorba: S E S Sorból: S S E Első: S E

2018, Diszkrét matematika

Számelméleti alapfogalmak

Algoritmuselmélet 1. előadás

Programozás alapjai. 8. előadás

OSZTHATÓSÁG. Osztók és többszörösök : a 3 többszörösei : a 4 többszörösei Ahol mindkét jel megtalálható a 12 többszöröseit találjuk.

Miről lesz ma szó? A PROGAMOZÁS ALAPJAI 1. Dinamikus adatszerkezetek. Dinamikus adatszerkezetek. Önhivatkozó struktúrák. Önhivatkozó struktúrák

Algoritmuselmélet 2. előadás

Hatékonyság 1. előadás

Diszkrét matematika I., 12. előadás Dr. Takách Géza NyME FMK Informatikai Intézet takach november 30.

Algoritmuselmélet. Hashelés. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem

4. Előfeltételek (ha vannak) 4.1 Tantervi Nincs 4.2 Kompetenciabeli Feladatok kijelentéseinek megértése

GRÁFOK ÉS ALGORITMUSOK ELMÉLETE VIZSGAKÉRDÉSEK Matematika BSc Elemző szakirány II. év 1. félév

Gráfok, definíciók. Gráfok ábrázolása. Az adott probléma megoldásához ténylegesen mely műveletek szükségesek. Ábrázolások. Példa:

10. tétel. Adatszerkezetek és algoritmusok vizsga Frissült: január 28.

Láncolt listák. PPT 2007/2008 tavasz.

Algoritmusok és adatszerkezetek II. régebbi vizsgakérdések.

7 7, ,22 13,22 13, ,28

Rendezések. Sergyán Szabolcs Óbudai Egyetem Neumann János Informatikai Kar október 24.

11. előadás. Párhuzamosság. Több szálon futó algoritmusok, logikai párhuzamosság. Adatszerkezetek és algoritmusok előadás április 30.

Nagyságrendek. Kiegészítő anyag az Algoritmuselmélet tárgyhoz. Friedl Katalin BME SZIT február 1.

Diszkrét matematika II., 8. előadás. Vektorterek

22. GRÁFOK ÁBRÁZOLÁSA

Rendezések. A rendezési probléma: Bemenet: Kimenet: n számot tartalmazó (a 1,a 2,,a n ) sorozat

Algoritmuselmélet. 2-3 fák. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem. 8.

Adatszerkezet - műveletek

Ellenőrző kérdések. 36. Ha t szintű indexet használunk, mennyi a keresési költség blokkműveletek számában mérve? (1 pont) log 2 (B(I (t) )) + t

file:///d:/okt/ad/jegyzet/ad1/b+fa.html

Átírás:

. előadás ról általában, soros, önátrendező, rendezett és kulcstranszformációs Adatszerkezetek és algoritmusok előadás 0. április. ról általában,, és Debreceni Egyetem Informatikai Kar.

Általános tudnivalók Ajánlott irodalom: Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein: Új algoritmusok, Scolar Informatika, 00. Donald E. Knuth: A számítógépprogramozás művészete. (Alapvető algoritmusok), Műszaki Könyvkiadó,. Donald E. Knuth: A számítógépprogramozás művészete. (Keresés és rendezés), Műszaki Könyvkiadó,. Seymour Lipschutz: Adatszerkezetek, Panem-McGraw-Hill, Budapest,. Rónyai Lajos, Ivanyos Gábor, Szabó Réka: Algoritmusok, Typotex, Budapest, 00. Félév teljesítésének feltételei: Gyakorlati aláírás ZH Írásbeli vizsga, aminek az értékelésébe... További részletek: http://hallg.inf.unideb.hu/~halasz http://it.inf.unideb.hu/~halasz http://shrek.unideb.hu/~gjhalasz ról általában.

Adatelemei tartalmuk alapján, valamilyen kulcs segítségével címezhetők (pl.: tömb, mátrix, ). Legegyszerűbb eset: kulcs = index (pl. tömb). Megkülönböztetünk: közvetlen (direkt) szervezésű struktúrák véletlen (indirekt) szervezésű struktúrák Feladat: a kulcs alapján feleltessünk meg valamilyen memóriaterületet az adatelemnek. ról általában Közvetlen szervezésű struktúrák esetén a kulcs és az adatelem között egyértelmű megfeleltetés állítható fel..

dinamikus, homogén és asszociatív adatszerkezet. KULCS ÉRTÉK a egy eleme ról általában Elemei összetettek: kulcs és érték komponensből állnak..

A kulcsnak a ban előforduló értékeit kulcsértékeknek nevezzük. KULCS ÉRTÉK ról általában a kulcs értékei (különbözőek) elemeit a kulcsuk értékei alapján különböztetjük meg egymástól. ban nem szerepelhet két azonos kulcsérték. (Ezért nevezhetjük őket kulcsértékeknek.).

az egydimenziós tömb általánosításának tekinthető: az adatelemeket a kulcsuk értéke alapján azonosítjuk, ezeknek az értékeknek azonban nem feltétlenül kell egész számoknak lenniük, lehet más típusuk is. KULCS ÉRTÉK ról általában azonos típusúak A KULCS és ÉRTÉK komponensek típusának sem feltétlenül kell megegyeznie egymással. Az adatelemekben a kulcsértékek típusát a KULCS típusa, az értékek típusát az ÉRTÉK típusa határozza meg..

az egydimenziós tömb általánosításának tekinthető: az adatelemeket a kulcsuk értéke alapján azonosítjuk, ezeknek az értékeknek azonban nem feltétlenül kell egész számoknak lenniük, lehet más típusuk is. KULCS ÉRTÉK ról általában azonos típusúak A KULCS és ÉRTÉK komponensek típusának sem feltétlenül kell megegyeznie egymással. Az adatelemekben a kulcsértékek típusát a KULCS típusa, az értékek típusát az ÉRTÉK típusa határozza meg..

Az adatelemek beli sorrendjét az elemek ba kerülésének időbeli (érkezési) sorrendje, ill. az esetleges törlések sorrendje befolyásolja. tal végezhető műveletek Létrehozás: a KULCS és az ÉRTÉK típusának meghatározása, és az elemek elhelyezése érkezési sorrendben. Bővítés: a végén, az új elemet az eddigi utolsó elem mögé helyezzük el. Törlés: mind folytonos, mind szétszórt reprezentáció mellett megvalósítható a fizikai törlés. Csere: az érték rész bármikor, kulcsérték csak akkor cserélhető, ha az új érték még nem szerepel. Rendezés: nem értelmezett. Keresés: teljes keresés a kulcs értéke alapján. Elérés: soros. Bejárás: általában az elejétől a végéig. A feldolgozás alapja a kulcs és a teljes keresés. ról általában.

Folytonosan és szétszórtan (pl. egyirányban láncolt listával) egyaránt ábrázolható. Előbbi esetben a fizikai törlést úgy valósíthatjuk meg, hogy a törlendő adatelemet a utolsó elemével felülírjuk, és csökkentjük a aktuális elemszámát. Utóbbi esetben a törlés szokás szerint mutatóértékek cseréjével oldható meg. Mikor érdemes használni? Ha az elemek feldolgozási gyakorisága nagyjából azonos, és nem lényeges az elemek feldolgozásának a sorrendje. (Pl.: Sokkal gyakrabban számolunk átlagot, mint keresünk egy bizonyos elemet.) ról általában.

tal végezhető műveletek A műveletek legtöbbje megegyezik a soros éval. Kivételt képez a feldolgozás. Egy elem feldolgozása után a feldolgozott elemet a elejére helyezzük, az addigi első elem elé. Ennek következtében mindig a legutoljára feldolgozott elem lesz a elején. Nagyszámú adatelem feldolgozása után az elemek sorrendje a ban jól fogja közelíteni a feldolgozási gyakoriságot: a elején lesznek a gyakrabban feldolgozott elemek. Az önátrendező legjobban szétszórtan, egyirányban láncolt listával reprezentálható. Ekkor a feldolgozás művelete mindössze három mutató értékének a cseréjét jelenti. ról általában Mikor érdemes használni? Ha az elemek feldolgozási gyakorisága (nagyon) eltérő..

endezett Elemei a kulcsértékek alapján rendezettek, az adatelemek sorrendjét a kulcsértékek (általában) növekvő sorrendje definiálja. tal végezhető műveletek A műveletek legtöbbje megegyezik a soros éval. Kivételt képeznek a következő műveletek: Létrehozás és bővítés: az érkező elemeket rendezetten helyezzük el a ban, rendezett sorozatba történő beszúrással. Csere: az adatelem értékrésze bármikor cserélhető. Keresés: lineáris vagy bináris (reprezentációfüggő). Folytonos reprezentációnál gyorsabb a keresés, de nehézkes a bővítés és a törlés. Szétszórt reprezentációnál ennek az ellenkezője igaz. ról általában Mikor érdemes használni? Ha az elemek feldolgozási gyakorisága nagyjából azonos, és fontos a feldolgozásuk sorrendje és gyorsasága..0

ulcstranszformációs Véletlen szervezésű struktúrák. Cél A (szinte) közvetlen elérés biztosítása a kulcsértékek alapján. Hash függvény A kulcstranszformációs ban egy K értékű kulccsal rendelkező elem helyét (címét) egy h függvény h(k ) értéke határozza meg. Ezt a h függvényt hívjuk hasító vagy hash függvénynek. Hashing Azt az eljárást, melynek során egy adatelem K értékű kulcsához meghatározzuk a h(k ) értéket (az adatelem beli helyét), hasításnak, hashingnek, randomizálásnak vagy kulcstranszformációnak nevezzük. ról általában Ennek a fajtának az ábrázolása folytonos vagy legalább a folytonos ábrázoláson alapul..

ulcstranszformációs Kölcsönösen egyértelmű hash függvény használható, ha a gyakorlatban előforduló kulcsértékek száma közel azonos az elvileg lehetséges kulcsértékek számával; vagy a gyakorlatban előforduló kulcsértékek egyenletesen oszlanak el az elvileg lehetséges kulcsértékek között. ról általában Ha a gyakorlatban előforduló kulcsértékek száma és az elvi lehetőségek száma között nagy az eltérés, és a gyakorlatban előforduló kulcsértékeknek nem egyenletes az eloszlása, akkor csak egyértelmű hash függvények használatára van lehetőség. Egy egyértelmű hash függvénytől a következőket várjuk el: a gyakorlatban előforduló kulcsokat képezze le a rendelkezésre álló címtartományba; a rendelkezésre álló címtartományon belül tegye egyenletessé az elemek eloszlását..

ulcstranszformációs módszer A kulcstranszformációs módszer egy algoritmus, amely azt írja le, hogy a hash függvény hogyan képezi le a kulcsértéket a tárbeli címre. A gyakorlatban a kulcsok típusa alapján megkülönböztetünk szöveges és numerikus kulcsokat. Szöveges típusú kulcsok esetén a szöveget alkotó karakterek belső kódjainak valamilyen numerikus függvényét tekintjük, amellyel a kulcstranszformációt a numerikus típusú kulcsok esetére vezethetjük vissza. ról általában Numerikus típusú kulcsok esetén többek között az alábbi használhatók: prímszámmal való osztás szorzás helyiérték-kiválasztás bázistranszformáció.

, szinonimakezelő Univerzális hash függvény nem létezik. A csak egyértelmű hash függvényeknél előfordulhat, hogy a függvény a különböző kulcsértékekkel rendelkező adatelemekhez ugyanazt a tárcímet rendeli. Az ilyen adatelemeket szinonimáknak, magát a jelenséget pedig túlcsordulásnak nevezzük. (Egyéb elnevezések: ütközés, ütközéskezelés.) A szinonimák felbukkanását kezelni kell, mert nem helyezhetünk el két vagy több adatelemet ugyanazon a tárhelyen. ról általában Néhány szinonimakezelő módszer: független túlcsordulási lista alkalmazása nyílt címzés módszere nyílt címzés (belső) láncolással.

üggetlen túlcsordulási lista h(k) = k mod + 0 ról általában.

üggetlen túlcsordulási lista h(k) = k mod + 0 nil ról általában.

üggetlen túlcsordulási lista h(k) = k mod + 0 nil nil ról általában.

üggetlen túlcsordulási lista h(k) = k mod + 0 nil nil ról általában.

üggetlen túlcsordulási lista h(k) = k mod + 0 nil nil nil ról általában.

üggetlen túlcsordulási lista h(k) = k mod + 0 nil nil nil ról általában.

üggetlen túlcsordulási lista h(k) = k mod + 0 nil nil nil nil ról általában.

üggetlen túlcsordulási lista h(k) = k mod + 0 nil nil nil nil nil ról általában.

üggetlen túlcsordulási lista h(k) = k mod + 0 nil nil nil nil nil ról általában.

üggetlen túlcsordulási lista ról általában.

Független túlcsordulási lista Hatékonyság Legyen T egy m rést tartalmazó hasító, melyben n elem van. Definiáljuk T-ben az α kitöltési tényezőt, mint az n/m hányadost, ami nem más, mint az egy láncba fűzött elemek átlagos száma. Feltételezzük, hogy minden elem egyforma valószínűséggel képződik le bármely résre, függetlenül attól, hogy a többiek hová kerültek. Ezt egyszerű egyenletes hasítási feltételnek nevezzük. Ha a T[j] lista hosszát n j -vel ( j =,,..., m ), jelöljük, akkor n = n + n + + n m ról általában és n j várható értéke E [n j ] = n/m = α. Feltesszük, hogy a h(k) hasított érték O() idő alatt számítható ki, s így egy k kulcsú elem keresésének ideje lineárisan függ a T [h(k)] lista n h(k) hosszától..

Független túlcsordulási lista Hatékonyság Theorem (Tankönyv:.. tétel.) Ha egy hasító ban az ütközések feloldására láncolást használunk és a hasítás egyszerű egyenletes, akkor a sikertelen keresés átlagos ideje Θ( + α). Bizonyítás. Az egyszerű egyenletesség feltételezése miatt bármely k kulcs, amely még nincs a ban, egyforma valószínűséggel képződik le az m rés bármelyikére. Ezért egy k kulcs sikertelen keresésének átlagos ideje megegyezik annak átlagos idejével, hogy a T [h(k)] listát végigkeressük. Ennek a listának az átlagos hossza E [ n h(k) ] = α. Ezért a sikertelen keresés során megvizsgált elemek várható száma α, s így az összes szükséges idő (beszámítva a h(k) kiszámítási idejét is) valóban Θ( + α). ról általában Theorem (Tankönyv:.. tétel.) Ha egy hasító ban a kulcsütközések feloldására láncolást használunk és a hasítás egyszerű egyenletes, akkor a sikeres keresés átlagos ideje Θ( + α)..

Független túlcsordulási lista Hatékonyság Theorem (Tankönyv:.. tétel.) Ha egy hasító ban az ütközések feloldására láncolást használunk és a hasítás egyszerű egyenletes, akkor a sikertelen keresés átlagos ideje Θ( + α). Bizonyítás. Az egyszerű egyenletesség feltételezése miatt bármely k kulcs, amely még nincs a ban, egyforma valószínűséggel képződik le az m rés bármelyikére. Ezért egy k kulcs sikertelen keresésének átlagos ideje megegyezik annak átlagos idejével, hogy a T [h(k)] listát végigkeressük. Ennek a listának az átlagos hossza E [ n h(k) ] = α. Ezért a sikertelen keresés során megvizsgált elemek várható száma α, s így az összes szükséges idő (beszámítva a h(k) kiszámítási idejét is) valóban Θ( + α). ról általában Theorem (Tankönyv:.. tétel.) Ha egy hasító ban a kulcsütközések feloldására láncolást használunk és a hasítás egyszerű egyenletes, akkor a sikeres keresés átlagos ideje Θ( + α)..

yílt címzés módszere Egy tárhely státusza lehet: { üres szabad logikailag törölt foglalt bővítése: ról általában h(k) = k mod + h(k) 0.

yílt címzés módszere Egy tárhely státusza lehet: { üres szabad logikailag törölt foglalt bővítése: h(k) h(k) = k mod + 0 ról általában.

yílt címzés módszere Egy tárhely státusza lehet: { üres szabad logikailag törölt foglalt bővítése: h(k) h(k) = k mod + 0 ról általában.

yílt címzés módszere Egy tárhely státusza lehet: { üres szabad logikailag törölt foglalt bővítése: h(k) h(k) = k mod + 0 ról általában.

yílt címzés módszere Egy tárhely státusza lehet: { üres szabad logikailag törölt foglalt bővítése: h(k) h(k) = k mod + 0 ról általában.

yílt címzés módszere Egy tárhely státusza lehet: { üres szabad logikailag törölt foglalt bővítése: h(k) h(k) = k mod + 0 ról általában.

yílt címzés módszere Egy tárhely státusza lehet: { üres szabad logikailag törölt foglalt bővítése: h(k) h(k) = k mod + 0 ról általában.

yílt címzés módszere Egy tárhely státusza lehet: { üres szabad logikailag törölt foglalt bővítése: h(k) h(k) = k mod + 0 ról általában.

yílt címzés módszere Egy tárhely státusza lehet: { üres szabad logikailag törölt foglalt bővítése: h(k) h(k) = k mod + 0 ról általában.

yílt címzés módszere Ha adott egy h : U {,,..., m } közönséges hasító függvény, akkor a lineáris kipróbálás módszere az alábbi hasító függvényt használja (i=,,...,m): h(k, i) = ((h (k) + i ) mod m) +. ról általában Négyzetes kipróbálás módszere: ( ) h(k, i) = (h (k) + c (i ) + c (i ) ) mod m +. Dupla hasítás módszere: h(k, i) = ((h (k) + (i ) h (k)) mod m) +. Itt h (k)-nak relatív prímnek kell lennie m-hez képest. (Pl. m = k és h (k) = h (k) +.).0

yílt címzés módszere Ha adott egy h : U {,,..., m } közönséges hasító függvény, akkor a lineáris kipróbálás módszere az alábbi hasító függvényt használja (i=,,...,m): h(k, i) = ((h (k) + i ) mod m) +. ról általában Négyzetes kipróbálás módszere: ( ) h(k, i) = (h (k) + c (i ) + c (i ) ) mod m +. Dupla hasítás módszere: h(k, i) = ((h (k) + (i ) h (k)) mod m) +. Itt h (k)-nak relatív prímnek kell lennie m-hez képest. (Pl. m = k és h (k) = h (k) +.).0

yílt címzés módszere Ha adott egy h : U {,,..., m } közönséges hasító függvény, akkor a lineáris kipróbálás módszere az alábbi hasító függvényt használja (i=,,...,m): h(k, i) = ((h (k) + i ) mod m) +. ról általában Négyzetes kipróbálás módszere: ( ) h(k, i) = (h (k) + c (i ) + c (i ) ) mod m +. Dupla hasítás módszere: h(k, i) = ((h (k) + (i ) h (k)) mod m) +. Itt h (k)-nak relatív prímnek kell lennie m-hez képest. (Pl. m = k és h (k) = h (k) +.).0

yílt címzés módszere Theorem (Tankönyv:.. tétel.) Ha adott egy nyílt címzéses hasító az α = n/m < kitöltöttségi aránnyal, akkor a sikertelen keresés várható próbaszáma az egyenletes hasítási feltétel teljesülése esetén legfeljebb /( α). Corollary (Tankönyv:.. következmény.) Egy α kitöltési tényezőjű nyílt címzéses hasító ba való beszúrás várható próbaszáma az egyenletes hasítási feltétel teljesülése esetén legfeljebb /( α). Theorem (Tankönyv:.. tétel.) ról általában Legyen adott egy nyílt címzéses hasító az α < kitöltöttségi aránnyal. Tegyük fel az egyenletes hasítási feltételt és azt, hogy a minden elemét egyforma valószínűséggel keressük. Ekkor a sikeres keresés várható próbaszáma α ln α.

yílt címzés módszere Bizonyítás. Egy k kulcsot keresve ugyanazt a kipróbálási útvonalat követjük, mint amikor az azt tartalmazó elemet beszúrtuk. A.. következmény szerint ha k az (i + )-edik elemként került be a hasító ba, akkor a próbák várható száma a keresésnél legfeljebb /( i/m) = m/(m i). A hasító ban levő n kulcsra átlagolva azt kapjuk, hogy a sikeres keresés átlagos próbaszáma: n m n m i i=0 = m n = α n m i i=0 m k m α m n x dx k=m n+ = α ln m m n = α ln α Például: α = 0. = várható próbaszáma, α = 0. = várható próbaszáma, ról általában.

yílt címzés (belső) láncolással Egy tárhely státusza lehet: szabad (üres vagy logikailag törölt) (Itt tényleg mindegy.) foglalt bővítése: ról általában h(k) = k mod + h(k) 0.

yílt címzés (belső) láncolással Egy tárhely státusza lehet: szabad (üres vagy logikailag törölt) (Itt tényleg mindegy.) foglalt bővítése: h(k) h(k) = k mod + 0 0 ról általában.

yílt címzés (belső) láncolással Egy tárhely státusza lehet: szabad (üres vagy logikailag törölt) (Itt tényleg mindegy.) foglalt bővítése: h(k) 0 h(k) = k mod + 0 0 ról általában.

yílt címzés (belső) láncolással Egy tárhely státusza lehet: szabad (üres vagy logikailag törölt) (Itt tényleg mindegy.) foglalt bővítése: ról általában h(k) h(k) = k mod + 0 0 0.

yílt címzés (belső) láncolással Egy tárhely státusza lehet: szabad (üres vagy logikailag törölt) (Itt tényleg mindegy.) foglalt bővítése: ról általában h(k) h(k) = k mod + 0 0 0 0.

yílt címzés (belső) láncolással Egy tárhely státusza lehet: szabad (üres vagy logikailag törölt) (Itt tényleg mindegy.) foglalt bővítése: ról általában h(k) h(k) = k mod + 0 0 0 0.

yílt címzés (belső) láncolással Egy tárhely státusza lehet: szabad (üres vagy logikailag törölt) (Itt tényleg mindegy.) foglalt bővítése: h(k) h(k) = k mod + 0 0 0 0 0 ról általában.

yílt címzés (belső) láncolással Egy tárhely státusza lehet: szabad (üres vagy logikailag törölt) (Itt tényleg mindegy.) foglalt bővítése: h(k) 0 0 h(k) = k mod + 0 0 0 0 ról általában.

yílt címzés (belső) láncolással Egy tárhely státusza lehet: szabad (üres vagy logikailag törölt) (Itt tényleg mindegy.) foglalt bővítése: h(k) h(k) = k mod + 0 0 0 0 0 0 ról általában.

ulcstranszformációs tal végezhető műveletek Létrehozáskor a gyakorlatban előforduló kulcsértékek darabszámát megbecsüljük, kiválasztunk egy hash függvényt és (ha szükséges) egy szinonimakezelési módszert, majd lefoglaljuk a tárhelyeket a becslésnek megfelelően, és mindegyiket üresre állítjuk. Bővítés: az adatelem kulcsértéke alapján, a hash függvény segítségével. Törlés: szinte kizárólag logikai; fizikai csak a túlcsordulási listából. Csere: kulcs alapján a hozzá tartozó értéket lehet cserélni. Rendezés: nincs. Elérés: kvázi közvetlen, a hash függvény a közvetlen elérést szolgálja, a szinonimákat keresni kell. Keresés: általában nincs, csak szinonimákat kereshetünk, az pedig a szinonimakezelési módszertől függ. Bejárás: nincs, mivel csak közvetlen elérés van. A feldolgozás alapja a hash függvény, illetve a közvetlen elérés. ról általában.