gpt4 book ai didi

javascript - 寻找未知形状的边缘的算法

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:26:47 26 4
gpt4 key购买 nike

我正在寻找一种可以为我提供随机形状的所有边的高效算法。我可以写一个,但如果有人知道可以优化的现有解决方案,我将不胜感激,因为它将在手机上运行:)

示例形状:

=====     ==========
===== \=========
====/ \\
===/ \\
==/ =======
=/ =======
====================
=======
=======
=====\ =======
======\ /=======

对于左上边缘,我需要可以有效地提供给我的数据:[ 0%, 0% ], [ 25%, 0% ]

最佳答案

似乎没有比嵌套循环和字符检查更优化的方法了。我可能是错的,但这就是我要开始的地方。

for ( i = 0; i < rows; i++ ){
for (j = 0; j < cols; j++ ){
if character[i][j] === '/' or '|' or '\' or '-'
// Edge-Found logic.
}
}

编辑

我撤销之前的回答。我考虑了更多,您可以通过在第一个找到的字符边缘实例处停止迭代并搜索该点周围的所有直接节点以寻找另一条边缘来进一步优化。冲洗并重复,直到您一路回到起始边缘。这个问题本身很容易递归,并通过在绘制形状时创建链表来打开一个编程选项的世界。

让我想起二年级计算机科学中的一些老鼠迷宫问题。很好的问题——很高兴时不时地看到有趣的问题! :D

此外 - 对于任何其他好奇的人,您可以查看“图论”以了解诸如此类的各种很酷的问题。它基本上是互联网、谷歌地图和各种其他很酷的数据库应用程序的动力(例如,它是 FaceBook 数据库背后的理论,几乎独自负责他们的服务速度......听说过 OpenGraph ?)

关于javascript - 寻找未知形状的边缘的算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8685674/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com