ALG3

ALG3



7.3. Transformacja kluczowa 193

Naturalną konsekwencją nowego sposobu zapamiętywania danych jest maksymalne uproszczenie procesu poszukiwania. Poszukując bowiem elementu x charakteryzowanego przez pewien klucz' v możemy się posłużyć znaną nam funkcją H. Obliczenie H(v) powinno zwrócić nam pewien adres pamięci, pod którym należy sprawdzić istnienie x, i do tego w sumie sprowadza się cały proces poszukiwania!

Mamy tu zatem do czynienia z zupełnym porzuceniem jakiegokolwiek procesu przeszukiwania zbioru danych: znając funkcję H, automatycznie możemy określić położenie dowolnego elementu w pamięci - wiemy również od razu, gdzie prowadzić ewentualne poszukiwania.

Czytelnik ma prawo w tym miejscu zadać sobie pytanie: to po co w takim razie męczyć się z listami, drzewami czy też innymi strukturami danych, jeśli można używać transformacji kluczowej? Jest to bardzo dobre pytanie, niestety odpowiedź na nie jest możliwa w jednym zdaniu. Wstępnie możemy tu podać dwa istotne powody ograniczające użycie tej metody:

•    ograniczenia pamięci (trzeba z góry zarezerwować tablicę T na Emav elementów,

•    trudności w odnalezieniu dobrej funkcji H.

O ile pierwszy powód jest oczywisty, to sprecyzowanie, czym jest dobni funkcja H, wymaga osobnego paragrafu.

7.3.1.W poszukiwaniu funkcji H

Funkcja H na podstawie klucza v dostarcza indeks w tablicy T, służącej do przechowywania danych. Potencjalnych funkcji, które na podstawie wartości danego klucza v zwrócą pewien adres adr, jest jak się zapewne domyślamy -mnóstwo. Parametry, które mają główny wpływ na stopień skomplikowania funkcji H, to: długość tablicy, w której zamierzamy składować rekordy danych, oraz bez wątpienia wartość klucza v. Przed zamierzonym przystąpieniem do klawiatury, aby wklepać naprędce wymyśloną funkcję //, warto się dobrze zastanowić, które atrybuty rekordu danych zostaną wybrane do reprezentowania klucza. Logicznym wymogiem jest posiadanie przez tą funkcję dwóch własności:

' Pojęcie „klucza” pochodzi z teorii baz danych i jest dość powszechnie używane w informatyce; „kluczem” określa się zbiór atrybutów, które jednoznacznie identyfikują rekord (nie ma dwóch różnych rekordów posiadających laką samą wartość atrybutów kluczowych).


Wyszukiwarka

Podobne podstrony:
ALG5 7,3. Transformacja kluczowa 195 tylko, aby jako wynik otrzymać pewną liczbę, którą można późni
ALG7 7.3. Transformacja kluczowa 197 Istnieją dwie wartości parametru 67, które „rozrzucają” klucze
ALG9 7.3. Transformacja kluczowa 199 Co jest niepokojące w zaproponowanej powyżej metodzie? Zapreze
193(1) 2 P0S1TI0N DISPLAY: len sposob wyświetlania danych używany jest do wyboru pozycji osi X, Y. Z
ALG 1 7.3. Transformacja kluczowa 201 int pos=H(x.v); while (TTposl != WOLNE) po3 - (po3il) %
ALG 3 7.3. Transformacja kluczowa 203 oznaczonego symbolicznie jako START. Proces poszukiwania zakoń
ALG 5 7.3. Transformacja kluczowa 205 liczba jest z dużym prawdopodobieństwem przewidywalna. Nic moż
124 ZDARZENIA — KSIĄŻKI — LUDZIE Naturalną konsekwencją trudności z wodą jest konieczność
str23 Modeli* wychowania rotdsiaI piąty , wychodzi od kluczowych słów naturalnej *rfnunikaqi. Są to
Zarz Ryz Finans R063 6. Kontrakty forward 193 sposobem ustalenia walutowego kursu forward jest znal
74219 WiZ3 074 (2) 1 NIEBO PRZEZ LORNETKĘPIERWSZE PLAMY NOWEGO CYKLUGdy noce są krótkie, warto w ci
Naturalną, konsekwencją rozwoju i upowszechniania się technologii informacyjnych jest powstawanie no
23894 na dz z pol072 146 przez Prasłowian. Naturalną konsekwencją przyjęcia tej hipotezy było twierd
ALG3 Przedmowa 13Rozdział 10 Elementy algorytmiki grafów Opis jednej z najciekawszych struktur dany
ALG3 1.3. Proces koncepcji programów 23 pisania jednej linii kodu. Pomijając już jednak tego typu s

więcej podobnych podstron