我在一次采访中遇到了这个问题,并以比最差的优化方式更少的方式回答了这个问题,我只是希望找到一个更好的答案,或者不知道是否已经存在用于此目的的算法。
问题:除了单个单元格计数和总计数之外,还可以在二维网格中找到所有可能的连通单元格组合。
,即网格大小(2,2)。答案:13.可能的组合:(1),(2),(3),(4),(1,2,3,4),(1,2),(1,3),(2,4) ,(3,4),(1,2,3),(2,4,3),(1,3,4),(1,2,4)。
我的答案:我在2d数组中存储了两个值第一个值:单元格编号[1,2,3,4]第二个值:一个包含直接联合单元格编号的int数组。并对其进行迭代以获取总数为4的单元格,即2到最大单元格之间的每个数字的所有可能组合。
如果有更好的答案,请分享。