এই টিউটোরিয়ালে আমরা একটি স্ট্রিং থেকে সব অ্যানাগ্রাম খুঁজে বের করার প্রোগ্রাম লিখব।
নমুনা ইনপুট আউটপুট:
Input: anagram = "cat" string = "tacghactcat" Output: Anagram at 0 Anagram at 5 Anagram at 7 Anagram at 8
অ্যালগরিদম
১. দুটি স্ট্রিং ইনিশিয়ালাইজ করুন। ২. একটি ফাংশন তৈরি করুন যা যাচাই করবে দুটি স্ট্রিং অ্যানাগ্রাম কিনা। ৩. মূল স্ট্রিংয়ের মধ্য দিয়ে ইটারেট করুন যেখানে অ্যানাগ্রাম খুঁজতে হবে। ৩.১. সাবস্ট্রিংটি অ্যানাগ্রাম কিনা তা উপরের ফাংশন দিয়ে চেক করুন। ৩.১.১. যদি সত্য হয়, তবে স্ট্রাটিং ইন্ডেক্স প্রিন্ট করুন।
উদাহরণ কোড
# collections ইম্পোর্ট করুন অ্যানাগ্রাম চেক করার জন্য
import collections
# দুটি স্ট্রিং ইনিশিয়ালাইজ করুন
anagram = 'cat'
string = 'tacghactcat'
# অ্যানাগ্রাম চেক করার ফাংশন
def is_anagram(sub_string):
# Counter ব্যবহার করে অ্যানাগ্রাম চেক
if collections.Counter(anagram) == collections.Counter(sub_string):
return True
else:
return False
# দুটি স্ট্রিংর লেন্থ নিন
anagram_len = len(anagram)
string_len = len(string)
# স্ট্রিংর মধ্য দিয়ে ইটারেট করুন
for i in range(string_len - anagram_len + 1):
# সাবস্ট্রিং অ্যানাগ্রাম কিনা চেক করুন
if is_anagram(string[i:i+anagram_len]):
# ইন্ডেক্স প্রিন্ট করুন
print(f'Anagram at {i}')
আউটপুট
উপরের প্রোগ্রাম রান করলে নিচের ফলাফল পাওয়া যাবে:
Anagram at 0 Anagram at 5 Anagram at 7 Anagram at 8
উপসংহার
টিউটোরিয়াল সংক্রান্ত কোনো প্রশ্ন থাকলে কমেন্ট সেকশনে জানাতে পারেন।