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

পাইথন ডিকশনারি হ্যান্ডলিং কতটা ব্যয়বহুল (Expensive)

পাইথন ডিকশনারি (dict) খুবই হাইলি অপ্টিমাইজড। এটি হ্যাশ টেবিল (hash table) বেসড ইমপ্লিমেন্টেশন।

টাইম কমপ্লেক্সিটি

অপারেশনকমপ্লেক্সিটি
ক্রিয়েশন (N কী)O(N)
ফেচিং (লুকআপ)O(1) এভারেজ
ইনসারশন/আপডেটO(1) অ্যামোর্টাইজড
ডিলিশনO(1) এভারেজ
ইটারেশনO(N)

কারণ দ্রুত

  • C-লেভেল ইমপ্লিমেন্টেশন (CPython-এ)
  • হ্যাশ টেবিলের সাথে ওপেন অ্যাড্রেসিং (open addressing)
  • ডাইনামিক রিসাইজিং (লোড ফ্যাক্টর মেইনটেইন)
  • পাইথন নিজে নিজের ক্লাসগুলো ডিকশনারি দিয়ে ইমপ্লিমেন্ট করে

তুলনা: লিস্ট vs ডিক্ট

  • লিস্ট/টাপল: সিকোয়েনশিয়াল অ্যাক্সেস, O(n) সার্চ
  • ডিক্ট/সেট: হ্যাশ-ভিত্তিক, O(1) লুকআপ
  • সমস্যা অনুযায়ী সঠিক ডেটা স্ট্রাকচার বেছে নিন

নिष्कর্ষ: ডিকশনারি এক্সপ্লিসিটলি অপ্টিমাইজ করার প্রয়োজন নেই। এটি ইতিমধ্যে অপ্টিমাল।

  1. পাইথনে লুপের ভিতরে এক্সসেপশন হ্যান্ডল করা

  2. পাইথন লিস্ট কম্প্রিহেনশনে এক্সসেপশন কীভাবে ক্যাচ করবেন?

  3. পাইথন ফাংশন হ্যাশেবল কেন এবং কীভাবে?

  4. পাইথন ডিকশনারি মাস্টার করুন: কি-ভ্যালু ম্যাপ দক্ষতার সাথে তৈরি, অ্যাক্সেস এবং ব্যবহার করুন