Professional Documents
Culture Documents
Hash
Hash
, : ( )
, .
, .. .
. , 1
10000, X ?. ,
, . O(1).
,
1 , 1 , .
8 . . , 0 231 ,
, .
. ,
1000, 0 231 .
231 , .
( )
-.
-, , ( 0
231 ) (
1000). - :
(..
). - (..
).
( , ) ,
. N .
-
N (X % N). : .
, X N X X % N. ,
Y, Y % N , Y ,
. O(1).
N .
. ,
, ( -).
, - 8
6, 19, 27, 11, 16, 22. .
0
, ..
. 1
16
, - 2
.
- . 3
4
19
11
27
- .
5
- O(1), ..
. 6
, , 7
22
6
.
, 2 N , N
. 1: -
, -.
- :
typedef struct {
struct -node *next;
int data;
} node;
node **hashTable;
int hashTableSize;
int hash(int data) {
return (data % hashTableSize);
}
node *insertnode(int data) {
1
hashTableSize = 20001;
hashTable = (node**) malloc(hashTableSize*sizeof(node*));
, - ,
. - , , ,
-
.
, - ,
. - ,
, .
- , -
.
-
( -).
, - .