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

পাইথনে ডিকশনারি ব্যবহার করে লিস্টে ফ্রিকোয়েন্সি কাউন্টিং

এই লেখায় একটি লিস্টে প্রতিটি এলিমেন্টের ফ্রিকোয়েন্সি (ঘনত্ব) কাউন্ট করার প্রোগ্রাম দেখানো হলো।

পদ্ধতি ১: ডিকশনারি ব্যবহার (ম্যানুয়াল)

এলিমেন্টগুলো কী (key) এবং ফ্রিকোয়েন্সি ভ্যালু (value) হিসেবে সংরক্ষণ করা হয়।

lst = ['a','b','a','c','d','c','c']
frequency = {}
for item in lst:
    if item in frequency:
        frequency[item] += 1
    else:
        frequency[item] = 1
for key, value in frequency.items():
    print(f"{key} -> {value}")

আউটপুট

a -> 2
b -> 1
c -> 3
d -> 1

পদ্ধতি ২: count() মেথড ব্যবহার

lst = ['a','b','a','c','d','c','c']
frequency = {}
for item in lst:
    frequency[item] = lst.count(item)
for key, value in frequency.items():
    print(f"{key} -> {value}")

আউটপুট

a -> 2
b -> 1
c -> 3
d -> 1

দ্বিতীয় পদ্ধতিটি সংক্ষিপ্ত কিন্তু O(n²) কমপ্লেক্সিটি। প্রথম পদ্ধতি O(n) এবং বড় লিস্টের জন্য দক্ষ। `collections.Counter` ব্যবহার করা সেরা প্র্যাকটিস।

  1. ডিকশনারি ব্যবহার করে স্ট্রিংয়ে প্রথম রিপিটেড ওয়ার্ড খুঁজে বের করা

  2. পাইথনে লিস্ট এবং ডিকশনারি ব্যবহার করে অ্যানাগ্রাম গ্রুপ করে প্রিন্ট করা

  3. পাইথনে List-এর অভ্যন্তরীণ কাজকর্ম

  4. পাইথনে accumulate ফাংশন ব্যবহার করে প্রিফিক্স সাম অ্যারে (Duplicate)