Bir İlişkilendirme Dizisi Nedir?



Karma tablosu veya karma haritası olarak da adlandırılan ilişkisel bir dizi, dizinin indisi bir tam sayı yerine bir dize dışında bir standart diziye benzer. Birçok veritabanı uygulamasında ve büyük miktarda veri ile ilgilenen diğer programlarda, ilişkilendirici bir dizi, düşük faizli araç kredisibilgileri verimli bir şekilde sıralamaya ve bilgiye erişmeye yardımcı olan önemli bir unsurdur. İlişkilendirilebilir bir dizinin özünde, normalde olduğu gibi tamsayılarla dizilmiş standart bir dizidir. Karma işlevi olarak adlandırılan özel bir algoritma, değeri bulmak için dize dizinini bir tamsayı dizinine dönüştürür. Bu tutarlı bir dönüşümdür, dolayısıyla gerçek tamsayı indeksinin saklanması gerekmez, bunun yerine her zaman gerektiği gibi dizeden hesaplanır.
Bir ilişkisel diziye başvururken kullanılan terminoloji, normal bir diziden bahsederken kullanılandan biraz farklı olabilir. Normalde bir indeks olarak adlandırılan - bir dizinin bir dizinin sayısal konumu - anahtar olarak adlandırılır. Anahtarla ilişkilendirilen verilere değer denir. Bu, bir ilişkisel dizi içinde, bir anahtarın, veri yapısındaki standart bir dizideki bir öğeye referans veren bir indekle ilişkili olan bir değer ile ilişkili olduğu anlamına gelir .
Her ilişkilendirici dizinin kalbinde karma işlevi vardır. Bu, tuşa dayalı bir değerin sayısal endeksini belirlemek için kullanılan bir algoritmadır. Bazıları, tamsayı olan ve bazılarının dizeler üzerinde çalışmak üzere tasarlanan bazı anahtarlarda çalışacak şekilde tasarlanmış çeşitli karma işlevleri vardır. Bir tamsayı anahtarı durumunda, popüler bir yöntem, anahtar değerini dizinin büyüklüğüne bölmek ve umarız, benzersiz bir dizin değeri elde etmek için bölümün kalanını kullanmaktır.
Karma işlevi, dizeleri olan anahtarlar için çok daha karmaşık olabilir. Bazı yöntemler dizgede her bir karakterin sayısal değerini eklemek ve daha sonra bir sayıya bölmek veya benzersiz bir sayı elde etmek için dizenin yalnızca ilk birkaç karakterini kullanmaktır. Bir karakter dizisinden bir sayı elde etmenin birçok yolu vardır.
İlişkisel bir dizide büyük miktarda anahtar-değer çiftleri ile uğraşırken ortaya çıkabilecek bir problem çarpışma olarak adlandırılır. Bir anahtardan türetilen tamsayı indeksi, başka bir anahtarın tamsayı diziniyle aynı olduğunda çarpışma olur. Bu iki anahtar daha sonra, değer dizisinde aynı dizine etkili bir şekilde işaret eder. Çarpışmaya çeşitli çözümler vardır, çünkü çoğu pratik uygulamada yüksek bir olasılık olma olasılığı vardır.
Çarpışmanınfaizsiz evlilik kredisi bir çözümü, her bir değer endeksinin aslında bir bağlantılı liste olması, böylece birden fazla anahtarın bu indeks konumuna çözüldüğü zaman, konumun birden fazla değer tutabileceğidir. Buna zincirleme denir ve bir çarpışmayı ele almanın basit bir yoludur, ancak bilgileri almak için gereken süreyi de yavaşlatabilir. Bir çarpışma ile uğraşmanın başka bir yöntemine doğrusal tarama denir. Bir çarpışma olduğunda, doğrusal tarama, kullanılmayan bir dizin bulunana kadar değer dizisinden geçerek çalışır. Bu çözüm, verilerin ilişkisel dizide eşit olarak dağıtılmasına yardımcı olabilir, ancak aynı zamanda bir değere bakmak için gereken süreyi de arttırabilir.

Yorumlar

Bu blogdaki popüler yayınlar

Harici bir ağ bağdaştırıcısı

CPU zamanı nedir?

Amerika Birleşik Devletleri'nde Kaç Posta Kodu var?