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

ডিকশনারি, সেট ও কাউন্টার ব্যবহার করে ফ্রিকোয়েন্সি চেক করার পাইথন প্রোগ্রাম


collections.Counter ব্যবহার করে ক্যারেক্টার ফ্রিকোয়েন্সি গড়ে, সেট দিয়ে ইউনিক ফ্রিকোয়েন্সি চেক করা হয় যে সব ফ্রিকোয়েন্সি সমান কিনা।

উদাহরণ

from collections import Counter

def check_frequencies(s):
    freq = Counter(s)
    unique_freq = list(set(freq.values()))
    
    if len(unique_freq) > 2:
        print("ফ্রিকোয়েন্সি সমান নয়")
    elif len(unique_freq) == 2 and abs(unique_freq[1] - unique_freq[0]) > 1:
        print("ফ্রিকোয়েন্সি সমান নয়")
    else:
        print("ফ্রিকোয়েন্সি সমান")

text = "xxxyyyzzzzzz"
print("স্ট্রিং:", text)
check_frequencies(text)

আউটপুট

স্ট্রিং: xxxyyyzzzzzz
ফ্রিকোয়েন্সি সমান নয়

ব্যাখ্যা

  • Counter দিয়ে প্রতিটি ক্যারেক্টারের ফ্রিকোয়েন্সি গণনা।

  • set(freq.values()) দিয়ে ইউনিক ফ্রিকোয়েন্সি সংখ্যা।

  • >2 ইউনিক ফ্রিকোয়েন্সি হলে সমান হতে পারে না।

  • ২টি ইউনিক ফ্রিকোয়েন্সি হলে তাদের পার্থক্য >1 হলে সমান নয়।

  • এই লজিক "Sherlock and the Valid String" সমস্যায় ব্যবহার হয়।


  1. Matplotlib এবং Python ব্যবহার করে একই ফিগারে একাধিক প্লট কীভাবে আঁকা যায়?

  2. পাইথনে স্ট্রিং-এর দুটি অর্ধেক একই ক্যারেক্টার সেট ধারণ করে কিনা চেক করা

  3. পাইথনে স্ট্রিংয়ের দুটি অর্ধেকের ক্যারেক্টার সেট একই কিনা যাচাই করার প্রোগ্রাম

  4. পাইথনে A কি B-র সুপারক্লাস তা কীভাবে চেক করবেন?