JavaScript 中两个相同字符之间最大的子字符串


我们需要编写一个 JavaScript 函数,该函数只能获取一个字符串作为参数。

该函数应找到夹在两个相同字符之间的最长字符串并返回其长度。

例如 -

如果输入字符串为 -

const str = 'sadtrsewak';

那么输出应该为 -

const output = 6;

因为在两个 ‘a’ 之间,我们有最长的期望子字符串,长度为 6。

示例

代码如下 −

const str = 'sadtrsewak';
const longestSubstringBetween = (str = '') => {
   const map = {};
   let res = -1;
   for(let i = 0; i < str.length; i++){
      const el = str[i];
      if(map.hasOwnProperty(str[i])){
         res = Math.max(res, i - map[el] - 1);
      }else{
         map[el] = i;
      };
   };
   return res;
}
console.log(longestSubstringBetween(str));

输出

控制台输出如下 -

6

更新于: 2021-01-23

162 次观看

开启您的 职业生涯

完成课程认证

开始
广告