【发布时间】:2015-06-13 22:23:51
【问题描述】:
我一直在编写一个代码(Py 2.7),它生成一个元素数组,每个节点都分配了一些随机数。现在,我希望列出周围元素,并找到最大值的索引。数组大小是可变的(我认为 col = 数组列大小)。我已经为每个节点分配了数字(我在下面将其称为“s”),以便我可以找到数组元素的二维索引。这是我写的
rn = s/col; cn = s%col;
b = [rr[rn,cn+1],rr[rn-1,cn+1],rr[rn-1,cn],rr[rn-1,cn-1],rr[rn,cn-1],rr[rn+1,cn-1],rr[rn+1,cn],rr[rn+1,cn+1]]
ma = max(b)
a = [i for i,j in enumerate(b) if j == ma]
是否有任何无需为每个数组元素编号而查找邻居的简短方法? (就像我使用 s 所做的那样)。
【问题讨论】:
-
您的问题令人困惑。试着用很简单的话来表达。有预期的结果或你想要达到的目标。
-
@boardrider 是的,我参考了那个链接
-
@csharpcoder 我的代码旨在创建一个具有不同行和列大小的二维数组,并分配随机数(最好取自均匀分布)。该代码应允许用户输入所选数组的开始和结束节点。因此,我制作了一个假定行和列大小(避免数组索引)的编号矩阵,我称之为 s(状态)。程序需要从起始状态开始并移动到结束,这样在每个状态下,它都会移动到具有最大数量的下一个状态(在邻居之间)。
-
@csharpcoder - 创建的数字矩阵对用户可见,用户可以从矩阵形式中选择两个数字作为开始和结束状态。
标签: python arrays nearest-neighbor