.


:




:

































 

 

 

 


.

, ( ) ( domaintype ) ( ) , rangetype (, domaintype rangetype ). , d domaintype r rangetype , M(d) = r.

, square(i) = i2, Pascal. , d M(d).

, , , .

:

1. MAKENULL(M). .

2. ASSIGN(M, d, r). M(d) r , M(d) .

3. COMPUTE(M, d, r). true r M(d), , false .

, . Pascal , 1..100 17..23, , , 'A'...'Z", , , , , . , crypt () 'A'...'Z' , , r1() .

, , rangetype "". , crypt, , , 'A'...'Z '?' "".

MAPPING () :

Type

MAPPING = array[domaintype] of rangetype;

 

(d1,r1), (d2, r2),..., (dk, rk), d1, d2 dn - , a r1, r2,..., rk , rf; (t = 1, 2,..., k). .

MAPPING elementtype,

Type

elementtype = record

domain: domain type

range: rangetype

End;

MAPPING , LIST ( elementtype), , .

:

1. ?

.

3. ?

 

.

, . "" . , . INSERT, DELETE MEMBER DICTIONARY ().

.

, ,

1,..., N N .

. , , . , : ; ( ) ( ).

:

1. ?

2. ?

, , - . : , - , , . . , , .

, . , . , , ( ). . , , - . 1, .

.

, DataRecord 11- .

struct DataRecord

{

int key;

int data;

};

- HF 11, 0-10.

HF(item) = item.key % 11

. , .

: {54,1}, {77,3}, {94,5}, {89,7}, {14,8}, {45,2}, {76,9}

, . , HF({54,1}) = 10, Table[10]. 89 45, 1.

{89,7} Table[1]. {45,2} , Table[1] . . Table[2]. 76 . 10 , . , Table[4]. 13, .. 1,9 .

. (bucket) , - . (chaining with separate lists).

, . , - .

DataRecord - HF.

: {54,1}, {77,3}, {94,5}, {89,7}, {14,8}, {45,2}, {76,9}

HF(item) = item.key % 11

. 30 ( ) , .

, , 9, .. 1,3 .

, , . , , , . . .

:



<== | ==>
, ; ; , . ? |
:


: 2016-04-03; !; : 489 |


:

:

, .
==> ...

1792 - | 1604 -


© 2015-2024 lektsii.org - -

: 0.018 .