मान लीजिए हमारे पास एक लोअरकेस स्ट्रिंग है। हमारा कार्य स्ट्रिंग में मौजूद स्वरों को उल्टा करना है। उदाहरण के लिए, यदि स्ट्रिंग "hello" है, तो स्वर उल्टा करने के बाद स्ट्रिंग "holle" हो जाएगी। स्ट्रिंग "programming" के लिए, यह "prigrammong" होगी।
हल करने के चरण
- स्ट्रिंग लें और स्वरों की एक सूची बनाएं, साथ ही उनके सूचकांक भी संग्रहीत करें
- स्वर सूची को उल्टा करें
- idx := 0 सेट करें
- i := 0 से दी गई स्ट्रिंग की लंबाई - 1 तक
- यदि i सूचकांक सूची में है
- vowels[i] को अंतिम स्ट्रिंग में डालें
- idx := idx + 1
- अन्यथा स्ट्रिंग[i] को अंतिम स्ट्रिंग में डालें
- यदि 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