Junior
Hash cədvəli hansı komponentlərdən ibarətdir?
sobes.tech Süni İntellekt
AI-dan cavab
Hash cədvəli aşağıdakı hissələrdən ibarətdir:
- Massiv (və ya siyahı): Əsas məlumat strukturu, burada elementlər saxlanılır. Bəzən onları "konteynerlər" (buckets) və ya "slotlar" adlandırırlar.
- Hash funksiyası: Giriş kimi açarı qəbul edən və massivdə (tam ədəd) indeks qaytaran funksiyadır. Yaxşı hash funksiyası açarların massivdə bərabər paylanmasını təmin edir və toqquşmaları minimuma endirir.
- Toqquşma idarəetmə mexanizmi: Hash funksiyası müxtəlif açarlar üçün eyni indeksi yaradırsa, bu vəziyyəti həll edən üsul. İki əsas metod:
- Ayrı-ayrı zəncir (Separate Chaining): Hər massiv elementi bu indeksdə hash olunmuş elementlərin siyahısına (zəncirli siyahı, B ağacı və s.) göstərici saxlayır.
- Açıq ünvanlama (Open Addressing): Toqquşma zamanı, element yerləşdirmək üçün massivdə başqa boş yer axtarılır. Axtarış strategiyaları:
- Xətti axtarış (Linear Probing)
- Kvadrat axtarış (Quadratic Probing)
- İkiqat hash (Double Hashing)
- Əməliyyatlar: Əsas əməliyyatların həyata keçirilməsi: əlavə etmə (insert), axtarış (search), silmə (delete). Bu əməliyyatlar elementlərin yerləşdiyi yeri müəyyən etmək üçün hash funksiyasından və lazım gəldikdə toqquşma idarəetmə mexanizmasından istifadə edir.