#兴业数金面试# #FE#
多选题好些个涉及jQuery的(哭),离谱的是还有涉及JS 调iOS API的题,我......
最后编程题,我脑壳进水了,愣是没往存在多组的方向考虑,一上来双指针扫,只25%的用例通过,嗯?!!!交完卷,不到2分钟突然想明白了,WTF,哪怕题目再多给一句提示都不至于这么打脑壳,时间全花在理解题意上,笨的一P......

// 题目:【 字符串之间的最长子字符串】
//例如:
//1. 输入 'aa',  返回0
//2. 输入'abcd', 返回-1
//3. 输入 'fabcfedgf',  返回7
题目就这么短,再多的一句话也没有

代码如下,写的比较垃圾,大佬轻拍,应该还有优化空间吧(注意空格的处理,两头的不算!在中间的也不算!)
全部评论
function maxLengthBetweenEqualCharacters (str) { str = str.trim() let arr = [] let max = 0 for(let i = 0; i<str.length; i++){ if(!arr.includes(str.charAt(i))){ arr.push(str.charAt(i)) // 如果之前没有就进栈 let j = str.lastIndexOf(str.charAt(i)) // 找出从尾部匹配的一项 if(j !== i){ // 判断出现的位置是不是和当前的一直 max = max > j - i - 1 ? max : j - i - 1 } } } return max } 不用分割数组
1 回复 分享
发布于 2021-08-11 01:52

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务