• bir veriden o verinin boyundan cok daha kisa ama diger verilerin hash'leriyle karismayacak bir sayisal deger cikarma islemi.
  • dictionary de tutulan verilerin saklanma biçimlerinden biridir. kullanımı da şöyle bir örneğe benzetebiliriz:

    bir okul öğrencilerini karışık gruplamak, ve gerektiğinde hemen ulaşabilmek istiyoruz. çünkü öğrenciler karışık kayıt oluyor. yani sisteme tahmin edilen sekansta eklenmiyor. öğrencilere ulaşmak için gerekli anahtar da okul numaraları kabul ediliyor. 10 tane grup yapıp, her öğrenci okul numarasının son basamağını taşıyan gruba gitsin derseniz, o öğrenciye ulaşmak istediğinizde tek basamak işlemle hangi grupta olduğunu bulur, gidip oraya bakarsınız. tabii burada okul numarasının son hanesi, hashing fonksiyonu olarak seçilmiştir. başka şeyler de seçilebilir.

    yalnız seri erişimlerde verimsiz bir metoddur. yani siz 100 den 200 e kadar öğrencileri istiyorsanız her seferinde hash algoritmasını kullanmanın bir faydası yoktur. o yüzden tek ve sık erişimlerin yapıldığı dictionarylerde kullanılan bir metoddur.

    diğer metodlar içün:
    (bkz: array)
    (bkz: linked list)
    (bkz: binary tree)
    (bkz: red black tree)
    (bkz: avl tree)
    (bkz: b tree)
  • zaman-mekan (time-space) dönüşümü içeren bir veri haritalama (mapping) metodu olarak bilgisayar bilimlerinde yer alır.

    basitçe görselleştirmek gerekirse; bir masanın üzerinde dağınık ama tek tek seçilebilecek şekilde duran eşyaları az sayıdaki çekmeceye yerleştirmek olarak düşünülebilir. bu durumda bazı çekmeceler belki boş kalacak (silgi olmaması?) bazıları ise birden fazla nesne (tükenmez kalem, kurşun kalem vs.) içerecektir. görülebileceği gibi ortada düzen sayesinde alandan bir kazanım mevcuttur. ancak odaya bu düzenden habersiz birisi girdiğinde aradığı bir eşyayı bulmak için tek tek çekmeceleri karıştıracaktır ve bu da vakit kaybına neden olacaktır, oysa masanın üstünde ve açıkta duran bir kalemi bulmak nispeten daha hızlı ve kolaydır.

    örneğimizde aynı çekmeceye birden fazla eşya konulması durumu "çakışma" (collision) terimi ile ifade edilir ve sistemin karmaşıklık seviyesini artırdığı için mümkün olduğunca uzak durulması istenen bir durumdur. ancak veri (masadaki eşya) sayısı arttıkça ve/veya hafıza alanı (çekmece sayısı) azaldıkça ortaya çıkma ihtimali artar. çakışma riskini artıran bir diğer unsur ise veri dağılımındaki sorunlardır. yani masamızının üzerindeki eşyaların çoğu kalemlerden oluşuyor ise bütün kalemleri tek çekmeceye koymak mantıklı bir seçim olmaz. bu durumda ya anahtar (key) faktörü değiştirmeli (tükenmez kalemler bir çekmeceye, kurşun kalemler başka çekmeceye gibi) ya da elimizdeki verilere daha uygun bir depolama metodu aramalıyız. buradan da görülebileceği için hashing metodu en verimli olarak "düzgün dağıtılmış" (uniform distribution) veri toplulukları üzerinde kullanılabilir ve işlem zamanından öte hafıza alanının önemli olduğu durumlarda tercih edilmelidir.

    python dilinde yer alan veri yapılarından sözlükler (dictionary) hashing kullanan veri yapılarına örnek olarak verilebilir. bu veri yapısında listelerin (list) aksine veriler anahtar - değer ikilileri olarak depolanır ve depolanma sıralarının bir önemi yoktur. bu nedenle sıra ile veri işlemesi gerektiren fonksiyonlarda kullanırken dikkatli olmak gerekir. yani "for eleman in ornekdict:" gibi bir döngü tanımlamak kimi durumlarda başınızı ağırtabilir.

    çekmecelerdeki eşyaların neye göre depolandığını algılayıp buna göre daha hızlı taramalar yapabilecek programlar için ise:

    (bkz: machine learning)
  • o(1) olması nedeni ile cok tercih edilen bir yapı
    (bkz: big oh)
  • (bkz: sha1) (bkz: md5) (bkz: md4)
  • edonkey2000 'in açılışı sırasında, yarım yamalak çekmiş olduğunuz dosyalar ile ilgileniren status bölümünde yazan yazı.
  • (bkz: dashing)
  • hhh hash hause harriers gurubunun yaptığı hash işine hasing denir
  • cogunlukla cebirsel mod i$lemi kullanilarak hesaplanan ancak, cogunlugun bildiginin aksine, hesaplanmasi icin sadece mod i$lemi kullanilmasina gerek olmayan metot. bilgisayar bilimleri konularindan biridir.
hesabın var mı? giriş yap