Performans nedenleri için bir dizeyle tanımlanmış bir nesne grubunu gruplara bölme ihtiyacım var. Nesne ya da bir dizi veya noktalar tanımlayıcı parçalarını ayıran öneki (kalifiye) şeklinde bir dizi tanımlanabilir:Karışık sayısal ve basit tanımlayıcılar için en iyi karma işlevi
12
323
12343
2345233
123123131
ns1:my.label.one
ns1:my.label.two
ns1:my.label.three
ns1:system.text.one
ns2:edit.box.grey
ns2:edit.box.black
ns2:edit.box.mixed
Sayısal tanımlayıcıları 1'den birkaç milyon bulunmaktadır. Metin tanımlayıcılarının, aynı ad alanı öneki (ns1 :) ve aynı yol öneki (edit.box) ile başlayan çok fazla olması muhtemeldir.
Bu amaç için en iyi karma işlevi nedir? Nesne tanımlayıcı istatistiklerine dayanan kepçenin büyüklüğünü bir şekilde tahmin edersem iyi olur. Bazı istatistiksel bilgilere dayanarak iyi hash fonksiyonu oluşturmak için bazı iyi makaleler var mı?
Birkaç milyondan fazla tanımlayıcı vardır, ancak bunların amacı karma işlevine göre bunları 1-2 bin gruba ayırmaktır.
Aşağıdaki genel amaçlı karma işlevlerinden birini veya daha fazlasını kullanmayı düşündünüz: http://www.partow.net/programming/hashfunctions/index.html son derece hızlı ve verimli. –