Junior — Middle
Dictionary və HashSet məlumat strukturları istifadə və daxili quruluş baxımından necə fərqlənir?
sobes.tech Süni İntellekt
AI-dan cavab
Dictionary və HashSet C#-də hash cədvəllərinə əsaslanan məlumat strukturlarıdır, lakin müxtəlif məqsədlər və quruluşlara malikdirlər:
-
Dictionary<TKey, TValue> açar-dəyər cütlüklərindən ibarət kolleksiyadır. Unikal açar vasitəsilə dəyəri tez tapmağa imkan verir. Daxili olaraq açarların hashlənməsini istifadə edir.
-
HashSet<T> açar-dəyər cütlüyü olmayan unikal elementlər kolleksiyasıdır. Unikal obyektləri saxlamaq və tez axtarış, əlavə və ya silmə üçün istifadə olunur.
Əsas fərqlər:
- Dictionary cütlükləri saxlayır, HashSet yalnız açarları (elementləri).
- Dictionary açar vasitəsilə dəyəri almağa imkan verir, HashSet isə elementin olub-olmadığını yoxlayır.
Nümunə:
var dict = new Dictionary<int, string>();
dict[1] = "bir";
var set = new HashSet<int>();
set.Add(1);
bool hasKey = dict.ContainsKey(1); // true
bool hasElement = set.Contains(1); // true
Buna görə də, açar-dəyər əlaqəsini qurmaq lazımdırsa Dictionary, unikallıq və sürətli axtarış vacibdirsə HashSet seçin.