当前位置: 首页 > wzjs >正文

网站设计团队有哪些职业哈尔滨网站制作方案定制

网站设计团队有哪些职业,哈尔滨网站制作方案定制,网站定制怎么收费,网站建设英文方案leetcode 131 思路 本题也是使用回溯来解答,不懂回溯的可以看看之前博文:组合 其实对于回溯的问题有一个模版,我们一般设计到回溯就有递归,需要写一个递归函数,递归函数需要判断什么时候是终止条件,在回…

leetcode 131
在这里插入图片描述

思路

本题也是使用回溯来解答,不懂回溯的可以看看之前博文:组合
其实对于回溯的问题有一个模版,我们一般设计到回溯就有递归,需要写一个递归函数,递归函数需要判断什么时候是终止条件,在回溯中,一般使用递归函数不会有返回值,所以我们在外层写上全局变量result存放所欲需要的结果值,path作为每一层遍历的结果值。

对字符串进行切割的时候是不是需要知道从哪个位置开始切割呢?

是的,所以我们的startIndex作为切割的起始位置,每次遍历的时候从startIndex开始,一直到str.length的位置,当startIndex === str.length的时候,说明字符串都遍历完了,后面也没有值可以遍历了,这时候递归就要结束,然后我们需要把path放到结果集result中,⚠️:存放path的时候不能直接存放,因为path是数组,直接存放的话会存放引用地址,后续path的改变也会影响result,所以此处需要copy一份path的内容来存放。
但是大家会疑惑,直接push了path的值,没有判断是否是回文串呢?这里把逻辑判断放在了path入栈的时候,在入栈的时候会判断这个值是否是回文串,只有满足回文串才能进入path中,如果不是回文串就continue,注意这里是continue,不是return!!!

为什么不是回文串的时候是continue而不是return呢?

这里我们举个例子,s = ‘aaba’
假设第一次分割点在第一个a后,分割后的结果:a/aba,后续要对aba进行分割,有三种情况:

  • [a]/ba
  • [ab]/a
  • [aba]/
    我们要判断的是否回文串是对括号中的元素来判断,当遇到ab不是回文串的时候如果return,那么就不会再分割到下一个值aba/了,如果是continue就会跳过ab这个分割值,继续后续的分割点
    对于aaba这个子串,我们的分割情况可以是这样的:
    在这里插入图片描述

解答

var partition = function (s) {let result = [], path = [];const backtracking = (str, startIndex) => {if (startIndex === str.length) {result.push([...path])return;}for (let i = startIndex; i < str.length; i++) {if (isPalindromeStr(str, startIndex, i)) {// 是回文子串path.push(str.slice(startIndex, i + 1))} else {continue;}backtracking(str, i + 1)// 回溯path.pop()}}backtracking(s, 0)return result;
};
// 判断是否回文串
const isPalindromeStr = (str, startIndex, i) => {while (startIndex < i) {if (str[startIndex] !== str[i]) return falsestartIndex++i--}return true
}
http://www.dtcms.com/wzjs/601955.html

相关文章:

  • 无锡企业自助建站系统长沙优秀网站建设
  • 电子商务网站建设前景龙岗做网站
  • 湛江制作网站公司太原市建设工程招标投标网站
  • 搜索引擎有哪些网站西安机械加工网
  • 网站建设情况简介扬州 网站建设
  • 扬中网站建设哪家好公司里开发app的叫什么
  • 做网站app怎么赚钱网页加速器排名
  • 做网站哪家比较好邹城网站制作
  • 做重视频网站网站服务器租赁费高吗
  • 网站建设所有软件清单局域网网站建设协议
  • 网站开发定制公司设计网站推荐知乎
  • 网站域名做链接怎么做商务网站建设与维护 试题
  • 商城网站建站系统动易网站开发
  • 网上做问卷报酬不错的网站是wordpress打字不显示图片
  • 做论坛网站网站加载模式
  • 网站建设需求方案文档网站的ftp服务器
  • 营销网站建立连云港优化推广
  • 太原富库网站建设温州网站推广
  • 企业网站建设存在的问题程序开发步骤不包括
  • 西安米德建站域名只做邮箱没网站要备案吗
  • 可视化网站模板wordpress修改自定义尺寸logo
  • 化州网站开发公司沈阳建设信息网
  • 前程无忧网杭州网站建设类岗位wordpress无法连接app
  • 哪个网站专注做微信模板小程序论坛
  • 简述网站制作流程房产网站程序
  • 张家港快速网站建设企业解决方案案例分析
  • 如何让人帮忙做网站深圳网站 建设
  • 国内网站空间 linux网站积分程序怎么建设
  • 网站 备案 多久知名公司网址
  • 做杂志的网站有哪些老王传奇新开网站