हमें एक JavaScript फ़ंक्शन लिखना है जो पहली और एकमात्र आर्गुमेंट के रूप में एक स्ट्रिंग लेता है।
हमारे फ़ंक्शन का कार्य यह जांचना है कि क्या स्ट्रिंग के वर्णों में कोई पुनर्व्यवस्था पालिंड्रोम स्ट्रिंग का परिणाम देती है या नहीं। यदि हां, तो हमारे फ़ंक्शन को true लौटाना चाहिए, अन्यथा false।
उदाहरण
यदि इनपुट स्ट्रिंग है:
const str = 'amadm';
तो आउटपुट होना चाहिए:
const output = true;
क्योंकि स्ट्रिंग को 'madam' बनाने के लिए पुनर्व्यवस्थित किया जा सकता है जो एक पालिंड्रोम स्ट्रिंग है।
उदाहरण
const str = 'amadm';
const canFormPalindrome = (str = '') => {
const hash = {};
let count = 0;
for (let i = 0; i < str.length; i++) {
let c = str[i];
if(c === ' '){
continue;
};
if(hash[c]){
delete hash[c];
}else{
hash[c] = true;
};
count++;
};
if(count % 2 === 0){
return Object.keys(hash).length === 0;
}else{
return Object.keys(hash).length === 1;
};
};
console.log(canFormPalindrome(str));
आउटपुट
true