इस खंड में हम वर्णों की एक स्ट्रिंग या धारा से पहला अद्वितीय या गैर-दोहराए जाने वाले चरित्र को खोजने जा रहे हैं। इस समस्या को हल करने के कई तरीके हैं। हम पात्रों की एक ही धारा के लिए दो अलग-अलग प्रोग्राम बनाने का प्रयास करेंगे।
विधि 1:फ़ंक्शन का उपयोग करना
def firstNonRepeatingChar(str1): char_order = [] counts = {} for c in str1: if c in counts: counts[c] += 1 else: counts[c] = 1 char_order.append(c) for c in char_order: if counts[c] == 1: return c return None print(firstNonRepeatingChar('PythonforallPythonMustforall')) print(firstNonRepeatingChar('tutorialspointfordeveloper')) print(firstNonRepeatingChar('AABBCC'))
परिणाम
M u None
उपरोक्त कार्यक्रम ओ (एन) समाधान देता है। उपरोक्त कार्यक्रम में हम पहले एक बार स्ट्रिंग के माध्यम से लूप करते हैं। एक बार जब हमें एक नया चरित्र मिल जाता है, तो हम इसे 1 के मान के साथ काउंट ऑब्जेक्ट में स्टोर करते हैं और इसे char_order में जोड़ देते हैं। जब हम दोहराए गए चरित्र में आते हैं, तो हम 1 से गिनती के मूल्य में वृद्धि करते हैं। अंत में, हम char_order के माध्यम से लूप करते हैं जब तक कि हमें char_order में 1 के मान वाला कोई वर्ण नहीं मिल जाता है और उसे वापस कर दिया जाता है।
विधि 2:लूप के दौरान उपयोग करना
s = "tutorialspointfordeveloper" while s != "": slen0 = len(s) ch = s[0] s = s.replace(ch, "") slen1 = len(s) if slen1 == slen0-1: print ("First non-repeating character is: ",ch) break; else: print ("No Unique Character Found!")
परिणाम
First non-repeating character is: u