हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना आवश्यक है जो एक स्ट्रिंग लेता है और 0 से इसके पात्रों को मैप करना शुरू करता है।
और हर बार, फ़ंक्शन को एक अद्वितीय (गैर-डुप्लिकेट) वर्ण का सामना करना पड़ता है, इसे मैपिंग गिनती को 1 से बढ़ाना चाहिए अन्यथा इसे डुप्लिकेट वर्णों के लिए समान संख्या को मैप करना चाहिए।
उदाहरण के लिए:यदि स्ट्रिंग है -
const str = 'heeeyyyy';
तब आउटपुट होना चाहिए -
const output = [0, 1, 1, 1, 2, 2, 2, 2];
इसलिए, आइए इस फ़ंक्शन के लिए कोड लिखें -
उदाहरण
इसके लिए कोड होगा -
const str = 'heeeyyyy';
const mapString = str => {
const res = [];
let curr = '', count = -1;
for(let i = 0; i < str.length; i++){
if(str[i] === curr){
res.push(count);
}else{
count++;
res.push(count);
curr = str[i];
};
};
return res;
};
console.log(mapString(str)); आउटपुट
कंसोल में आउटपुट होगा -
[ 0, 1, 1, 1, 2, 2, 2, 2 ]