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

পাইথন প্রোগ্রাম: স্ট্রিং হেটেরোগ্রাম (Heterogram) কিনা চেক করা


এখানে একটি স্ট্রিং দেওয়া আছে, আমাদের কাজ হলো চেক করা যে দেওয়া স্ট্রিং হেটেরোগ্রাম (Heterogram) কিনা।

হেটেরোগ্রাম চেক করার অর্থ হলো একটি শব্দ, ফরেজ বা বাক্য যেখানে আ্যালফাবেটের কোনো অক্ষর একবারের বেশি ব্যবহার হয়নি। একটি হেটেরোগ্রাম প্যানগ্রাম (pangram)-এর সাথে আলাদা যেটি আ্যালফাবেটের সকল অক্ষর ব্যবহার করে।

উদাহরণ

String is abc def ghi

This is Heterogram (no alphabet repeated)

String is abc bcd dfh

This is not Heterogram. (b,c,d are repeated)

অ্যালগরিদম

ধাপ ১: প্রথমে বাক্যে থাকা সকল আ্যালফাবেটের লিস্ট বের করুন। ধাপ ২: আ্যালফাবেটের লিস্টকে সেটে রূপান্তর করুন কারণ সেটে ইউনিক ভ্যালু থাকে। ধাপ ৩: যদি সেটের দৈর্ঘ্য আ্যালফাবেটের সংখ্যার সমান হয় তবে প্রতিটি আ্যালফাবেট একবারই ঘটেছে অর্থাৎ সেন্টেন্সটি হেটেরোগ্রাম, অন্যথায় নয়।

উদাহরণ কোড

def stringheterogram(s, n):    hash = [0] * 26    for i in range(n):    if s[i] != ' ':       if hash[ord(s[i]) - ord('a')] == 0:       hash[ord(s[i]) - ord('a')] = 1    else:    return False    return True    # ড্রাইভার কোড    s = input("Enter the String ::>")    n = len(s) print(s,"This string is Heterogram" if stringheterogram(s, n) else "This string is not Heterogram")

আউটপুট

Enter the String ::> asd fgh jkl asd fgh jkl this string is Heterogram Enter the String ::>asdf asryy asdf asryy This string is not Heterogram

  1. পাইথনে বাইনারি ট্রি সিমেট্রিক (সমমিতি) কিনা যাচাই করা

  2. পাইথনে গ্রাফ বাইপার্টাইট কিনা যাচাই করার প্রোগ্রাম

  3. দেওয়া স্ট্রিংটি পাইথন কিওয়ার্ড কিনা চেক করার প্রোগ্রাম

  4. পাইথনে স্ট্রিং প্যাংগ্রাম (Pangram) কিনা চেক করা