【发布时间】:2018-06-29 14:49:17
【问题描述】:
编辑:我现在意识到这个问题不适合堆栈,但无论如何我得到了很多有用的建议。感谢大家!
我有一个二维数组,我想将具有相同值的邻居组合在一起。使用 C#(使用统一)。
假设我有这个:
int[,] array {
0,0,0,0,0,0,1,0,0,0,
0,1,1,0,0,0,1,0,0,0,
0,1,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,1,1,1,0,
0,0,0,0,0,0,1,1,1,0
}
存在三个 1:s 的“集群”。我想将它们添加到带有一些变量以进行识别的字典中。所以可能首先将相邻值添加到列表中,将该列表添加到字典中,清除列表并移动到下一个集群。
实际中的列和行的长度相同。
我还希望排序方法接受各种大小的数组,因此没有硬编码值。我从 XML 文档中解析数组。
我试过查看Array.Sort,但我发现的资源完全是关于按/降序对值进行排序的。只是指出我正确的方向,一些相关的网络资源将不胜感激!
【问题讨论】:
-
堆栈不是“将您引向正确方向”的正确位置。相反,它是针对 specific 编程相关问题的 specific 问题。因此,在这里问“我该怎么做”是题外话。
-
我认为我的问题非常具体。如果没有别的,我会很感激“把你放在正确的方向”。但如果我误解了规则,我很抱歉。
-
没有内置插件可以识别您在这样的数据结构中寻找的功能。你需要自己写。尝试这样做,我们可以帮助您解决问题。
-
您需要将其分解为更小的子问题。例如,如何在数组中找到“簇”?您如何表示字典中的集群?您如何标记集群以进行识别?由于您正在构建此特定软件,因此只有您可以回答最后两个问题。第一个问题需要进行一些研究,以找到可以适应您的问题的现有算法。