class JavaInterviewQuestion{
public static void main(String[] args){
// Hashmapdan object oldik. Orqa fonda 16 size ga ega Node array ochildi
HashMap<String, Object> map = new HashMap<>();
}
}
/**
Hashmapni ichida shunga o'xshash node bor, yani fieldlari shunaqa
**/
class Node<K, V>{
int hash;
K key;
V value;
Node next;
}
class JavaInterviewQuestion{
public static void main(String[] args){
HashMap<String, Object> map = new HashMap<>();
map.put("one", 15); // valueni Object tipida qilganim uchun int tipida qiymat berdim
}
}
class HashMap{
void put(K key, V value){
// shunga o'xshagan amaliyot bo'ladi
Node node = new Node(hash(key), key, value, null);
}
}
joylashadigan_index = hash(key) & size; // size default holatda 16 ga teng

class JavaInterviewQuestion{
public static void main(String[] args){
HashMap<String, Object> map = new HashMap<>();
map.put("one", 15); // valueni Object tipida qilganim uchun int tipida qiymat berdim
map.put("ten", null); // valuega null berish ham mumkin
}
}

nodelarni hash larni taxminiy olinyapti, keyni aniq qilib hashlansa bunaqa hash chiqmasligi mumkin. Hashlar shunchaki tushuntirish ucun olingan
class JavaInterviewQuestion{
public static void main(String[] args){
HashMap<String, Object> map = new HashMap<>();
map.put("one", 15); // valueni Object tipida qilganim uchun int tipida qiymat berdim
map.put("ten", null); // valuega null berish ham mumkin
map.put("five", 17); // key lardagi stringlar ham ixtiyoriy yozilyapti
}
}