例如,我有int数组的集合
a. {1,2,3,4,5} b. {2,6,7} c. {1,5,8,11,100}
a. {1,2,3,4,5}
b. {2,6,7}
c. {1,5,8,11,100}
它可能是数千个这样的数组.我需要找到可以删除的数组.在所有数字都包含在其他数组中的情况下,只能删除数组.在上面的例子中,数组a可以被删除,因为它的数字2和数组4在数组b中,数字1,5位于数组c中.
什么最好的方式做这样的操作?
为数组成员创建丰富的字典.例如:
1 => 2 2 => 2 3 => 2 4 => 2 5 => 2 6 => 1 7 => 1 ...
检查每个数组,如果所有成员的丰度大于1,删除数组并减少字典中每个数字的计数.