Data Struct

Hask Table

Tidak semua tabel hash menggunakan daftar tertaut sebagai ember. Alternatif yang populer adalah menggunakan ember "lebih baik", misalnya pohon biner, atau tabel hash lainnya (dengan fungsi hash lainnya), ...     Beberapa tabel hash sama sekali tidak menggunakan kotak: lihat Buka Mengatasi (mereka datang dengan masalah lain, jelas)     Ada sesuatu yang disebut Linear re-hashing (ini adalah kualitas detail implementasi), yang menghindari perangkap "stop-the-world-and-rehash". Pada dasarnya selama fase migrasi Anda hanya memasukkan tabel "baru", dan juga memindahkan satu entri "lama" ke tabel "baru". Tentu saja, fase migrasi berarti pencarian ganda dll ... 

String data = "Selasa";
Integer iKey = null;
for(Map.Entry<Integer,String> hariEntry : hari.entrySet()){
if(data.equals(hariEntry.getValue())){
iKey = hariEntry.getKey();
break;
}else{
iKey = null;
}
}
if(iKey != null){
System.out.println("key : "+ iKey +" data :"+ hari.get(iKey));
}else{
System.out.println("Data tidak terdaftar");
}

 Pohon Biner     Re-balancing mahal, Anda dapat mempertimbangkan Daftar Lewati (juga lebih baik untuk akses multi-utas) atau Splay Tree.     Pengalokasi yang baik dapat "mengemas" simpul bersama dalam memori (perilaku caching yang lebih baik), meskipun ini tidak mengurangi masalah penunjuk penunjuk.     B-Tree dan varian juga menawarkan "pengepakan"

A. FUll binary tree

Binary Tree yang tiap nodenya (kecuali leaf) memiliki dua child dan tiap subtree harus mempunyai panjang path yang sama.

B.Complete Binary Tee

Mirip dengan Full Binary Tree,namun tiap subtree boleh memiliki panjang path yang berbeda.Node kecuali leaf memiliki 0 atau 2 child

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


Komentar