मान लीजिए कि हमारे पास एक लोअरकेस स्ट्रिंग है। हमारा काम स्ट्रिंग में मौजूद स्वरों को उलटना है। इसलिए यदि स्ट्रिंग "हैलो" है, तो स्वर उलटने के बाद की स्ट्रिंग "होल" होगी। स्ट्रिंग "प्रोग्रामिंग" के लिए, यह "प्रिग्रामोंग" होगा
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -
- स्ट्रिंग लें और स्वरों की एक सूची बनाएं, और उनके सूचकांक भी स्टोर करें
- स्वर सूची को उलट दें
- आईडीएक्स सेट करें:=0
- i के लिए :=0 से दी गई स्ट्रिंग की लंबाई - 1
- यदि मैं अनुक्रमणिका सूची में है -
- स्वरों[i] को अंतिम स्ट्रिंग में डालें
- idx :=idx + 1
- अन्यथा स्ट्रिंग [i] को अंतिम स्ट्रिंग में डालें
- यदि मैं अनुक्रमणिका सूची में है -
- सूची को एक स्ट्रिंग के रूप में लौटाएं
उदाहरण
आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -
class Solution: def reverseVowels(self, s): chars = list(s) index = [] vowels = [] for i in range(len(chars)): if chars[i] in ['a','e','i','o','u']: vowels.append(chars[i]) index.append(i) vowels = vowels[::-1] final = [] ind = 0 for i in range(len(chars)): if i in index: final.append(vowels[ind]) ind += 1 else: final.append(chars[i]) str1 = "" return str1.join(final) ob1 = Solution() print(ob1.reverseVowels("hello")) print(ob1.reverseVowels("programming"))
इनपुट
"hello" "programming"
आउटपुट
holle prigrammong