题解 | #压缩字符串(一)#
压缩字符串(一)
https://www.nowcoder.com/practice/c43a0d72d29941c1b65c857d8ac9047e
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param param string字符串
* @return string字符串
*/
export function compressString(str: string): string {
const arr = str.split("");
let i = 0;
let j = 1;
while (j <= arr.length) {
if (arr[i] === arr[j]) {
j++;
continue;
}
if (j - i > 1) {
arr.splice(i, j - i - 1);
arr[i] = `${arr[i]}${j - i}`;
i++;
j -= j - i;
} else {
i++;
j++;
}
}
return arr.join("");
}