leetcode不会-LC-Writeup:LC-Writeup

时间:2024-07-19 21:10:05
【文件属性】:

文件名称:leetcode不会-LC-Writeup:LC-Writeup

文件大小:2KB

文件格式:ZIP

更新时间:2024-07-19 21:10:05

系统开源

leetcode 不会LC-Writeup 问题:未交叉的线, 方法:自顶向下的动态规划 直觉: 让A和B成为我们的两个整数数组。 假设我们想在子数组A[0...i]和B[0...j] (包括两端)中找到最大数量的未交叉线。 如果子数组共享相同的最后一位数字( A[i] == B[j] ),则存在连接A[i]和B[j] 。 由于A[i]和B[j]属于子阵列的末端,连接它们的这条线不会与任何其他线相交。 因此,我们可以画这条线并查看剩余的子数组A[0...i-1]和B[0...j-1] 。 否则,子数组具有不同的最后一位数字 ( A[i] != B[j] )。 那么子阵列的至少一个末端不属于一条线(如果它们都有线,它们就会相交)。 这促使我们查看其中一个末端被移除的子数组( A[0...i-1], B[0...j]或A[0...i], B[0...j-1] )。 然后,答案等于生成最多未交叉线的任何一对子阵列。 算法: 让rec(i,j)成为计算子数组A[0...i]和B[0...j]中未交叉线的最大数量的函数。 基本情况:当一个或多个子数组为空时(如果i == -1或j == -1 ,


【文件预览】:
LC-Writeup-master
----code.py(918B)
----README.md(2KB)

网友评论