给定两个序列A和B,如何生成可以从A中删除B的所有可能方式的列表?
例如,在JavaScript中,如果我有一个函数removeSubSeq接受两个我想要的数组参数,它将按如下方式工作:
removeSubSeq([1,2,1,3,1,4,4], [1,4,4])会返回,[ [2,1,3,1], [1,2,3,1], [1,2,1,3] ]因为最后的4s会匹配,并且有1个匹配的可能位置
removeSubSeq([8,6,4,4], [6,4,8])会返回,[]因为第二个参数实际上不是一个子序列
removeSubSeq([1,1,2], [1])会返回,[ [1,2], [1,2] ]因为有两种方法可以删除1,即使它会导致重复