(问题在C#中,我对Unity和Cellular Automata的陈述是提供上下文)
我正在编写一个Cellular Automata系统,我需要每0.1秒快速更新一代。
每个单元格都会在场景中显示一个GameObject,并将其缓存。
问题是,当我想查找当前单元格是否存在时,我需要搜索整数数组中的整数(这是单元格所具有的邻居数),这非常慢。
请注意,每0.1秒会发生8000次以上。
我使用了Array和Index.Of()静态函数,这非常慢。接下来我发现了HashSet,它更好但速度不够快,因为我在调用HashSet.Contains()时因为打嗝而仍然发现FPS掉线。
实际上整数数组非常小,最多约为5个整数(我实际上需要两个这样的集合来生存和生下规则)。
所以我想知道是否有更快的方法在C#中进行搜索。
感谢。
修改 我发现列表对于我的情况下的少量项目更快。我已经过测试,但效果更好,但仍然滞后。