यह बहुत आम है। कठिन लगता है, लेकिन एक बार विचार करने पर वास्तव में बुरा नहीं लगता।
यह जांचने के लिए एक गोलांग फ़ंक्शन लिखें कि कोई स्ट्रिंग पैलिंड्रोम है या नहीं।
पेलिंड्रोम वर्णों का एक क्रम है जो उलटने पर भी समान रहता है, उदाहरण के लिए:
"अबा" एक पैलिंड्रोम है
"एबीबी नहीं है
"ab a" को अधिकांश लोग पैलिंड्रोम मानते हैं, इसलिए हम रिक्त स्थान को अनदेखा कर देते हैं।
func PalindromeCheck(str string) bool { trimmedStr := strings.ReplaceAll(str, " ", "") len := len(trimmedStr) chars := []rune(trimmedStr) for i := 0; iयह समाधान कार्यात्मक रूप से वही है जो आपको ऑनलाइन खोजते समय सी या जावा के लिए मिलेगा। हम अनिवार्य रूप से एक बेमेल चरित्र की तलाश में शुरुआत और अंत से आगे बढ़ने के लिए दोहरे पॉइंटर्स का उपयोग कर रहे हैं। जब कोई बेमेल पाया जाता है, तो हम घोषणा कर सकते हैं कि स्ट्रिंग पैलिंड्रोम नहीं है।
क्या हम इसे बेहतर बना सकते हैं?
क्या strings.ReplaceAll का उपयोग करने के बजाय रिक्त स्थान को ट्रिम करने का कोई बेहतर तरीका है? (वहाँ है लेकिन यह बदसूरत हो सकता है)
[]रूण में परिवर्तित करने की दक्षता के बारे में क्या कोई बेहतर तरीका है?टिप्पणियों में अपने विचार पोस्ट करें।
धन्यवाद!
इस पोस्ट और इस श्रृंखला के सभी पोस्ट का कोड यहां पाया जा सकता है
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3