231127 刷题日报

这周值班。。多少写道题吧,保持每天的手感。老婆给买了lubuladong纸质书,加油卷。

  1. 131. 分割回文串

写个这个吧,钉在耻辱柱上的题。

为啥没写出来:

  1. 递归树没画对

把树枝只看做是1个字母,而且不清楚树枝和节点含义:

树枝:每次的选择

节点:剩余下次可以做的选择

  1. 递归变量没写对,是水平递增走到底(走到字符串里最后一个字符,收集结果),而不是垂直递增走到底(结果里长度3,即树的深度,收集结果)

显然,这道题是要水平递增来切分字符串

这里i+1错写成start,结果就是:

debug:

start=0 i=0 str=a

start=1 i=1 str=a

start=2 i=2 str=b

collect start=3 result: [a, a, b]

start=1 i=2 str=ab

start=0 i=1 str=aa

start=1 i=1 str=a

start=2 i=2 str=b

collect start=3 result: [aa, a, b] // 这里错了,显然结果不应该是凑满3个,而是遍历完一次string 就收集一次结果

start=1 i=2 str=ab

start=0 i=2 str=aab

正确结果:

start=0 i=0 str=a

start=1 i=1 str=a

start=2 i=2 str=b

collect start=3 result: [a, a, b]

start=1 i=2 str=ab

start=0 i=1 str=aa

start=2 i=2 str=b

collect start=3 result: [aa, b]

start=0 i=2 str=aab

上面结果中如果 "start=1 i=2 str=ab" str恰好是回文是否会被添加到第二组结果中,答案不会,ab被回溯了(向上removeLast),然后才会找到aa

相关推荐
浅念-1 小时前
递归解题指南:LeetCode经典题全解析
数据结构·算法·leetcode·职场和发展·排序算法·深度优先·递归
Kiling_07042 小时前
Java集合进阶:Set与Collections详解
算法·哈希算法
智者知已应修善业2 小时前
【51单片机89C51及74LS273、74LS244组成】2022-5-28
c++·经验分享·笔记·算法·51单片机
洛水水2 小时前
【力扣100题】33.验证二叉搜索树
算法·leetcode·职场和发展
SimpleLearingAI2 小时前
聚类算法详解
算法·数据挖掘·聚类
刀法如飞3 小时前
Go 字符串查找的 20 种实现方式,用不同思路解决问题
算法·面试·程序员
Dlrb12115 小时前
C语言-指针数组与数组指针
c语言·数据结构·算法·指针·数组指针·指针数组·二级指针
WL_Aurora5 小时前
Python 算法基础篇之集合
python·算法
平行侠5 小时前
A15 工业路由器IP前缀高速检索与内存压缩系统
网络·tcp/ip·算法
阿旭超级学得完7 小时前
C++11包装器(function和bind)
java·开发语言·c++·算法·哈希算法·散列表