将字符串的唯一字符映射到数组 - JavaScript
我们需要编写一个 JavaScript 函数,传入一个字符串并开始从 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 ]
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
JavaScript
PHP