码迷,mamicode.com
首页 > 其他好文 > 详细

串联所有单词的子串

时间:2020-01-26 22:10:58      阅读:73      评论:0      收藏:0      [点我收藏+]

标签:技术   alt   indexof   return   rds   item   com   ===   cat   

技术图片

技术图片

技术图片

技术图片

export default (str, words) => {
  // 保存结果
  let result = []
  // 记录数组的长度,做边界条件计算
  let num = words.length
  // 递归函数体
  let range = (r, _arr) => {
    if (r.length === num) {
      result.push(r)
    } else {
      _arr.forEach((item, idx) => {
        let tmp = [].concat(_arr)
        tmp.splice(idx, 1)
        range(r.concat(item), tmp)
      })
    }
  }
  range([], words)
  // [0, 9, -1] filter 之后[0,9]
  return result.map(item => {
    return str.indexOf(item.join(''))
  }).filter(item => item !== -1).sort()
}

串联所有单词的子串

标签:技术   alt   indexof   return   rds   item   com   ===   cat   

原文地址:https://www.cnblogs.com/ygjzs/p/12234801.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!