【发布时间】:2023-03-29 17:28:02
【问题描述】:
给定一个 n*n 矩阵和一个值 k,我们如何找到每个元素的所有邻居?
例如:在4*4 矩阵中,k=2
说矩阵是:
[ 1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16]
这些值是位置的索引,1 are 1,2,3,5,6,9 的邻居。 3,6 and 9 的值只是因为 k =2 而如果 k = 1 则不会出现。
类似地,6 的邻居将是1 2 3 5 6 7 8 9 10 11 and 14
你能帮我写一个c代码来用c++实现这个吗?
这是冯诺依曼邻域的问题,请有人用c++实现它。谢谢
【问题讨论】:
-
这是作业吗?如果是,请将其标记为这样。 :)
-
你能扩展你对距离的定义吗?是沿网格跳 k 跳还是半径为 k 的圆?
-
您需要定义您想要使用的社区类型。从你的例子我猜你的意思是van Neumann neighborhood,但这并不清楚。
-
附言。只要稍微处理一下不等式,范诺依曼邻域的定义就可以很容易地扩展到算法中。因此,如果您使用它,您的算法将非常简单。
标签: c++ algorithm matrix nearest-neighbor