दो यूजर इनपुट स्ट्रिंग्स दी गई हैं, हमारा कार्य सभी कॉमन कैरेक्टर्स को अल्फाबेटिकल ऑर्डर में प्रिंट करना है।
उदाहरण
Input: string1: python string2: program Output: op
व्याख्या
दोनों स्ट्रिंग्स के बीच कॉमन अक्षर हैं o (1 बार), p (1 बार)।
एल्गोरिदम
चरण 1: पहले हम दो इनपुट स्ट्रिंग लेते हैं। चरण 2: अगला हम इन दो स्ट्रिंग्स को काउंटर डिक्शनरी में कन्वर्ट करेंगे। चरण 3: अब intersection() प्रॉपर्टी का उपयोग करके दो स्ट्रिंग्स के बीच कॉमन एलिमेंट्स ढूंढें। चरण 4: परिणाम भी एक काउंटर डिक्शनरी होगी जिसमें कॉमन एलिमेंट्स कीज़ के रूप में हों और उनकी कॉमन फ्रीक्वेंसीज़ वैल्यू के रूप में हों। चरण 5: काउंटर डिक्शनरी के elements() मेथड का उपयोग करके कीज़ की लिस्ट को उनकी फ्रीक्वेंसी की संख्या तक एक्सपैंड करें। चरण 6: आरोही क्रम में सॉर्ट करें ताकि रिजल्टेंट स्ट्रिंग अल्फाबेटिकल ऑर्डर में प्रिंट हो। चरण 7: स्पेस के बिना कैरेक्टर्स को जोड़कर रिजल्टेंट स्ट्रिंग उत्पन्न करें।
उदाहरण कोड
from collections import Counter
def common(str1, str2):
d1 = Counter(str1)
d2 = Counter(str2)
cdict = d1 & d2
if len(cdict) == 0:
print(-1)
return
cchars = list(cdict.elements())
cchars = sorted(cchars)
print("Common characters are ::>", ''.join(cchars))
# ड्राइवर प्रोग्राम
if __name__ == "__main__":
s1 = input("Enter first string")
s2 = input("Enter second string")
common(s1, s2)आउटपुट
Enter first string python Enter second string program Common characters are ::> op