给定两个数组。a=[1,3,4,2,5,6]b=[3,4,6,5,7]我们必须去掉3,1,2,6,插入6,7,使a等于b。
我们可以在第一个数组的任意位置删除和插入任何元素,并使该数组与第二个数组相同。输出是插入第一个数组所需的最小元素数。
constraints:
1 <= First Array Size <= 10^5
1<= Second Array SIze <= 10^5
1 <= firstarray[i] <= 10^9
1 <= secondarray <= 10^9
第二个数组由不同的元素组成。
注意:它与“编辑距离”相同,但这里的约束条件是10^5。分配两个10^5的长数组在我的系统中运行良好。但是对于dp,一个10^5和10^5的2d数组给出了outofmemoryerror。我知道最大数组大小是int的大小,也就是给定的内存大小。请解释为堆和堆栈分配了多少内存。一般来说,如何解决大输入的问题,比如那些无法放入java内存的输入?一些代码片段会有帮助。
暂无答案!
目前还没有任何答案,快来回答吧!