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

相关推荐
严文文-Chris1 小时前
【监督学习常用算法总结】
学习·算法
feifeigo1231 小时前
电池的荷电状态(SOC)估计
算法
博语小屋2 小时前
力扣 15.三数之和(medium)(双指针)
算法·leetcode·职场和发展
无敌最俊朗@2 小时前
双指针-力扣hot100-移动零.283
算法·leetcode·职场和发展
练习时长一年2 小时前
LeetCode热题100(腐烂的橘子)
算法·leetcode·职场和发展
Тиё Сиротака8 小时前
红包分配算法的严格数学理论与完整实现
算法
potato_may8 小时前
链式二叉树 —— 用指针构建的树形世界
c语言·数据结构·算法·链表·二叉树
java修仙传9 小时前
每日一题,力扣560. 和为 K 的子数组
算法·leetcode
ada7_9 小时前
LeetCode(python)——148.排序链表
python·算法·leetcode·链表
点云SLAM9 小时前
点云配准算法之-Voxelized GICP(VGICP)算法
算法·机器人·gpu·slam·点云配准·vgicp算法·gicp算法