কম্পিউটার টিউটোরিয়াল

পাইথন ডিকশনারি হ্যাশ লুকআপ (Hash Lookup) কীভাবে কাজ করে

পাইথন ডিকশনারি হ্যাশ টেবিল (Hash Table) হিসেবে ইমপ্লিমেন্টেড। ট্রি সার্চিং (tree searching) ব্যবহার হয় না।

লুকআপ প্রক্রিয়া

  1. কী-এর হ্যাশ কোড তৈরি: hash(key)
  2. হ্যাশ থেকে বাকেট ইনডেক্স নির্ধারণ
  3. বাকেটে কী মিলানো (কলিশন হলে প্রোবিং/oprobing)
  4. মিললে ভ্যালু রিটার্ন, নাইলে KeyError

পরফরম্যান্স

  • O(1) এভারেজ / অ্যামোর্টাইজড কনস্ট্যান্ট টাইম
  • ডিকশনারির সাইজ বড় হলেও লুকআপ টাইম কনস্ট্যান্ট থাকে

মেমরি ট্রেড-অফ

  • হ্যাশ টেবিল স্পার্স (sparse) — লোড ফ্যাক্টর ~২/৩ রক্ষা করা হয়
  • খালি বাকেটও মেমরি অকুপাই করে
  • এটি স্পেস-ফর-টাইম ট্রেড-অফ

হ্যাশ ফাংশন

  • ইমিউটেবল অবজেক্ট (স্ট্রিং, টাপল, ইন্ট) হ্যাশেবল
  • মিউটেবল অবজেক্ট (লিস্ট, ডিক্ট) হ্যাশেবল নয়
  • কাস্টম ক্লাসে __hash__ ও __eq__ ইমপ্লিমেন্ট করুন
  1. পাইথন ডিকশনারি-এ একটি কী এক্সিস্ট করে কিনা চেক করবেন?

  2. পাইথন ডিকশনারির ভ্যালু আপডেট করার পদ্ধতি

  3. পাইথন ডিকশনারি থেকে কি রিমুভ করার পদ্ধতি

  4. পাইথনে ডিকশনারি ইটারেট করার পদ্ধতি