(C#/ Unity)遍历2D数组的最快方法或以整数数组查找整数的最快方法(元胞自动机)

时间:2017-03-08 13:37:59

标签: c# performance

(问题在C#中,我对Unity和Cellular Automata的陈述是提供上下文)

我正在编写一个Cellular Automata系统,我需要每0.1秒快速更新一代。

每个单元格都会在场景中显示一个GameObject,并将其缓存。

问题是,当我想查找当前单元格是否存在时,我需要搜索整数数组中的整数(这是单元格所具有的邻居数),这非常慢。

请注意,每0.1秒会发生8000次以上。

我使用了Array和Index.Of()静态函数,这非常慢。接下来我发现了HashSet,它更好但速度不够快,因为我在调用HashSet.Contains()时因为打嗝而仍然发现FPS掉线。

实际上整数数组非常小,最多约为5个整数(我实际上需要两个这样的集合来生存和生下规则)。

所以我想知道是否有更快的方法在C#中进行搜索。

感谢。

修改 我发现列表对于我的情况下的少量项目更快。我已经过测试,但效果更好,但仍然滞后。

0 个答案:

没有答案