算法-小红书2020校招前端笔试题卷三

 

薯队长写了一篇笔记草稿,请你帮忙输出最后内容。
 1.输入字符包括,"("    ,    ")"    和    "<"和其他字符。 
2.其他字符表示笔记内容。
 3.()之间表示注释内容,任何字符都无效。    括号保证成对出现。
 4."<"表示退格,    删去前面一个笔记内容字符。括号不受"<"影响    。 
 
输入描述:
输入一行字符串。长度<=10000.

输出描述:
输出一行字符串,表示最终的笔记内容。 

输入例子1:
Corona(Trump)USA<<<Virus

输出例子1:
CoronaVirus

 我的回答:错误代码

function getStr(s){
    let  startIndex=0,endIndex=0;
    if(s.indexOf("(")!=-1&&s.indexOf(")")!=-1){
         let newstr=s.substring(0,s.indexOf("("))+s.substring(s.indexOf(")")+1,s.length); 
         return getStr(newstr);
    }
      return s;
}
function getNote(str){
    let newstr=getStr(str);
    if(newstr.indexOf("<")!=-1){
        let flagindex=newstr.indexOf("<");
        let nextstr=newstr.substring(0,flagindex-1)+newstr.substring(flagindex+1,newstr.length);
        return getNote(nextstr);
    }
    return newstr;
}
console.log(getNote("Corona(Trump)USA<<<Virus<<"))

 

posted @ 2022-09-03 20:08  菜彩  阅读(87)  评论(0)    收藏  举报