如何判断矩阵中的值是否为相邻区域

比如这样一个3X3的矩阵,如何判断选中的数据为相邻矩形区域??

1 2 3

4 5 6

7 8 9


比如


1,2,4,5就是同一个区域


1,2,3,4就不是一个区域

最好是根据选中的值的索引值来判断


摇曳的蔷薇
浏览 396回答 1
1回答

翻翻过去那场雪

假设坐标是二维数组的形式:const data = [  [101, 108],  [100, 108],]const isDataRect = data => {  let xMin = +Infinity,    yMin = +Infinity,    xMax = -Infinity,    yMax = -Infinity;  data.forEach(coord => {    let [x, y] = coord;    x = Number(x);    y = Number(y);    xMin = Math.min(xMin, x);    yMin = Math.min(yMin, y);    xMax = Math.max(xMax, x);    yMax = Math.max(yMax, y);  })  return data.length === (xMax - xMin + 1) * (yMax - yMin + 1)}console.log(isDataRect(data))
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript