【发布时间】:2016-06-02 17:58:17
【问题描述】:
我想出了一个算法来预测两个粒子之间的碰撞。给定一个矩形环境(宽度w,高度h),以及两个具有已知起始位置和速度的粒子,它可以确定
- 这两个粒子是否会永远碰撞
- 如果是这样,两个粒子下一次碰撞的时间
在有限的步骤中,可以说O(1)。通过扩展,它可以对O(n^2) 中的 n 个粒子执行此操作。这种方法有什么新颖之处吗?
我假设粒子以恒定速度线性移动并占据点(因此当两个粒子占据同一点时会发生碰撞)。
感谢您的帮助。
【问题讨论】:
-
我认为检查所有粒子对确实需要 O(n(n+1)),即 O(n^2)。我认为没有更快的算法。
-
这取决于你所说的“小说”是什么意思。这似乎是一个很简单的问题,你不太可能因此而变得富有和成名。但这也不是我过去见过的问题。
-
(假设粒子会从环境边缘反弹。如果没有,那么这当然是一个小问题。)
标签: algorithm collision-detection particles