这种题拿出来讲思路,真是无法言语。我用了一个半小时才封装了下面的函数,看来是我水平不够……
//要求:删除相邻的两个大小写的相同字母,
//比如:字符串'aAABbacaa','Aa'、'Aa','Bb',都要删除,aa不用删。
//这个删除后的结果是'caa'。
let str = 'aAABbacaa';
function handleArr(arr){
let i = 0;
let j = i+1;
let bool = false;
function fn(i,j){
while(arr[i].toUpperCase()===arr[j].toUpperCase() && arr[i]!==arr[j]){
arr.splice(i,2);
bool = true;
}
i++;
j++;
if(j<arr.length){
fn(i,j);
}else{
bool && handleArr(arr);
}
}
fn(i,j);
return arr.join('');
}
let result = handleArr(str.split(''));
console.log(result) //结果:'caa'
最近完善的nodejs服务器框架,有兴趣的了解下,npm模块名:yu-server