【发布时间】:2011-08-18 08:52:34
【问题描述】:
在笛卡尔坐标中给定一个多边形(不一定是凸的),我想知道是否有任何方法可以检查该多边形的对称性?
我可以想到一个 O(N) 的解决方案:使用旋转卡尺检查每对对边是否平行且大小相等。但是,我无法证明该算法的正确性。您能提出更好的解决方案吗?
【问题讨论】:
-
根据您对提议的解决方案的描述,我假设您只是在寻找 180° 旋转对称,而不是任何其他类型(例如 120° 旋转、反射等)
-
检查对仅适用于边数为偶数的多边形。
-
我认为所有边数为奇数的多边形都不能对称? @@
-
它们可以是旋转对称的。
-
等边(3条边)不是对称的吗?您绝对可以将其对折,这是对称的一种定义。
标签: algorithm geometry polygon computational-geometry symmetric