对点进行排序,使连续点之间的最小欧氏距离最大化

2023-12-21

给定 3D 笛卡尔空间中的一组点,我正在寻找一种算法来对这些点进行排序,使得minimal两个连续点之间的欧几里得距离将最大化。

如果算法倾向于最大化average连续点之间的欧氏距离。

Edit:

我已经交叉发布了https://cstheory.stackexchange.com/ https://cstheory.stackexchange.com/并得到了很好的答案。看https://cstheory.stackexchange.com/questions/8609/sorting-points-such-that-the-minimal-euclidean-distance- Between-consecutive-point https://cstheory.stackexchange.com/questions/8609/sorting-points-such-that-the-minimal-euclidean-distance-between-consecutive-poin.


这是解决方案成本的下限,它可以作为分支定界或更不可靠的不完整搜索算法的构建块:

对点之间的距离进行排序,并按非递增顺序考虑它们。使用http://en.wikipedia.org/wiki/Disjoint-set_data_struct http://en.wikipedia.org/wiki/Disjoint-set_data_structure跟踪点集,当通过两个点之间的链接连接时合并两个点集。将所有点合并为一组时遇到的最短距离的长度是完美解决方案中最小距离的上限,因为完美解决方案也会将所有点合并为一个。然而,您的上限可能比完美解决方案的最小距离长,因为您要连接的链接可能会形成一棵树,而不是一条路径。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

对点进行排序,使连续点之间的最小欧氏距离最大化 的相关文章

  • 四舍五入到最接近的 2 的幂

    是否有一个单行表达式 可能是布尔值 来获取最接近的2 n给定整数的数字 示例 5 6 7 必须是 8 四舍五入到下一个更高的二的幂 参见一些小技巧 http graphics stanford edu 7Eseander bithacks
  • ASM 中从小端到大端的快速转换

    我在 C 中有一个 uint 类型数组 在检查程序是否在小端机器上运行后 我想将数据转换为大端类型 因为数据量可能会变得非常大 但总是均匀的 所以我想考虑将两个 uint 类型作为 ulong 类型 以获得更好的性能并在 ASM 中对其进行
  • Lamport 的 Paxos 中的矛盾做了简单的论文

    阶段 2 a 如果提议者收到大多数接受者对其准备请求 编号为 n 的响应 则它向每个接受者发送一个接受请求 以获取编号为 n 且值为 v 的提案 其中 v 是响应中编号最高的提案的值 或者如果响应未报告任何提案 则为任意值 正如论文中提到的
  • O(log n) 总是比 O(n) 快吗

    如果有 2 种算法以不同的复杂度计算相同的结果 O log n 总是会更快吗 如果是这样请解释一下 顺便说一句 这不是作业问题 不会 如果一种算法运行在N 100另一个在 log N 100 那么对于较小的输入大小 第二个将会较慢 渐近复杂
  • 绘制圆圈(使用 for 循环在图像中应用的像素)

    我想使用像素位置 从左上角开始到右下角结束 绘制一个圆 带有 1 或 2 个 for 循环 我用这个方法成功绘制了一个矩形 private void drawrect int width int height int x int y int
  • 将 2:1 等距柱状全景图转换为立方体贴图

    我目前正在为网站开发一个简单的 3D 全景查看器 出于移动性能的原因 我使用 Three jsCSS 3 渲染器 https github com mrdoob three js blob master examples css3d pan
  • 按顺时针顺序对四个点排序

    数组中的四个 2D 点 我需要按顺时针顺序对它们进行排序 我认为只需一次交换操作就可以完成 但我还没有能够正式放下这一点 编辑 在我的例子中 这四个点是凸多边形 编辑 这四个点是凸多边形的顶点 它们不必按顺序排列 如果你想从更数学的角度来看
  • 将平面表解析为树的最有效/优雅的方法是什么?

    假设您有一个存储有序树层次结构的平面表 Id Name ParentId Order 1 Node 1 0 10 2 Node 1 1 1 10 3 Node 2 0 20 4 Node 1 1 1 2 10 5 Node 2 1 3 10
  • Java 服务器和浏览器客户端之间乐观对象复制的解决方案?

    我正在构建一个系统 多个用户需要同时创建 查看和修改一组对象 该系统计划在 Java 服务器和现代浏览器客户端上运行 我可以选择哪些 它需要在网络和服务器中断时具有鲁棒性 用户界面不得阻止修改 修改需要存储在本地并在连接恢复时发布 在正常操
  • 如果我在计算强连通分量时不使用 G 转置会怎样?

    我正在阅读算法导论 在 22 5 强连通分量中 算法 STRONGLY CONNECTED COMPONENT G 定义为 调用 DFS G 计算每个顶点 u 的完成时间 u f 计算 G 转置 调用 DFS G transpose 但在
  • 拓扑排序卡恩算法 BFS 或 DFS

    拓扑排序的方法是BFS还是DFS 哪个正确 我认为BFS是对的 但有些网站说DFS 有些网站说BFS 我很困惑 卡恩算法与 BFS 或 DFS 相同吗 或者BFS 或DFS 只是卡恩算法的工具 Kahn算法和DFS在实践中都用于拓扑排序 选
  • 为 d3.js 中的多个元素生成 ClipPaths

    我正在尝试创建部分填充的圆圈 就像最终的 纽约时报 政治大会可视化中的圆圈一样 http www nytimes com interactive 2012 09 06 us politics convention word counts h
  • 位图中连续区域的计数是否可以比 O(r * c) 改进?

    您将获得一张由卫星拍摄的表面图像 该图像是一个位图 其中水用 标记 土地标记为 相邻组 形成一个岛屿 二 如果它们水平 垂直或对角相邻 则它们是相邻的 您的任务是打印位图中岛屿的数量 输入示例 输出 5 这是我的实现 需要O r c 空间和
  • 如何在 Perl 中生成数组的所有排列?

    生成所有内容的最佳 优雅 简单 高效 方式是什么 n perl 中数组的排列 例如 如果我有一个数组 arr 0 1 2 我想输出所有排列 0 1 2 0 2 1 1 0 2 1 2 0 2 0 1 2 1 0 它可能应该是一个返回迭代器的
  • 检测霍夫圆android

    我正在尝试使用 android 检测圆圈 我成功实现了检测线算法 但在尝试绘制霍夫圆算法时没有显示任何内容 这是我的代码 Mat thresholdImage new Mat getFrameHeight getFrameHeight 2
  • 从样条解的给定点数组中查找 3 维 B 样条控制点?

    佤族正在谈论非均匀有理 B 样条 http en wikipedia org wiki Non uniform rational B spline 我们有一些简单的 3 维数组 例如 1 1 1 1 2 3 1 3 3 2 4 5 2 5
  • 转置矩阵存储在一维数组中,无需使用额外的内存[重复]

    这个问题在这里已经有答案了 可能的重复 矩阵的就地转置 https stackoverflow com questions 9227747 in place transposition of a matrix 最近参加了技术笔试 通过以下问
  • Python 中定义了黄金比例吗?

    有没有办法得到黄金比例phi 在标准Python模块中 我知道e and pi in the math模块 但我可能错过了phi某处定义 scipy constants http docs scipy org doc scipy refer
  • Welzl 算法的迭代版本

    我正在使用 Welzl 算法来查找点云的最小外接圆 2d 或最小外接球体 3d 不幸的是 该算法具有非常高的递归深度 即输入点数 这个算法有迭代版本吗 我找不到任何并且不知道如何将递归更改为循环 我发现了一些迭代的最小包围圆 球算法 但它们
  • 如何随机打乱一个比 PRNG 周期更多排列的列表?

    我有一个包含大约 3900 个元素的列表 我需要对其进行随机排列以产生统计分布 我环顾四周 发现了这个使用 Python random shuffle 进行随机播放的列表的最大长度 https stackoverflow com quest

随机推荐

  • C# Visual Studio 2008 引用 system32.dll ...如何?

    我需要参考 system32 shell32 dll 因为我使用一些 shell 函数来读取回收站 我尝试了 添加引用 gt COM gt Microsoft Shell 控制和自动化 和 添加引用 gt 浏览 gt 直接转到 system
  • 再次动态范围 - 再次使用文本字符串

    我有一系列数据集 稍后用于填充组合框 并且我尝试设置动态范围以仅列出具有有用数据的单元格 总共有 160 行数据 但填充的行数会有很大差异 如果它有影响 如果动态范围检测到 例如 非空白 用于填充该范围内的单元格的公式是 IF ROW RO
  • 比较两个 json 文件:shell 脚本

    我想比较两个 json 文件 如下所示 type 1 children nsubj role topic POS noun role vehicle POS noun 另一种格式类似 但两者之间存在一些差异 因为一个 json 文件由 33
  • 如何使用python在azure函数中使用http触发器上传html页面中的文件?

    我想要一种方法 如何上传文件 可以是没有 php 的 html 或者一些交互式 azure 上传页面 等等 并通过我的 URL 参数发送参数 这将运行其余的代码使用这个上传的文件 ofc我至少需要将它保存到blob 我需要一个rest ap
  • 如何将 javascript 连接到 .Net 中的 CustomValidator 控件

    我创建了一个 CustomValidator 控件 public class MyValidator CustomValidator IScriptControl 并创建了等效的客户端脚本 服务器验证工作正常 但是如何连接我的客户端脚本 渲
  • 在 IntelliJ IDEA 中管理 Grails 自动依赖项的源代码和 javadoc?

    如何将源代码和 javadoc 附加到 IntelliJ IDEA 中的库 这些库通过 Grails 依赖项解析自动链接 并且未在 IDEA 项目设置中明确列出 例如在BuildConfig groovy grails project de
  • 是什么导致 switch 语句中生成的 R.id.xxx 值出现“需要常量表达式”错误?

    我们有一个多项目应用程序 我们正在将其迁移到 gradle 构建会导致 Java 编译错误 例如 AFragment java 159 constant expression required case R id aBtn 我们已经确认错误
  • Pandas 数据框到 Flask 模板作为 json [重复]

    这个问题在这里已经有答案了 我尝试在烧瓶模板中输出熊猫数据框 我的想法是将其转换为json 然后循环遍历表 我测试了这个 jsonfiles df to json orient records return render template
  • 使用基于网络的在线免费 cron 安全吗?

    我的一个 ASP NET Web 应用程序中有一个邮件列表页面 我发现一个基于在线 Web 的 cron 可以在我的应用程序中每天执行一次 MailingList aspx 的 url 使用基于网络的在线免费 cron 安全吗 使用时应该注
  • 类型 存在于“A”和“B”中

    现在我知道这里已经有很多这样的问题 但是在翻阅它们之后 我还没有找到可以解决我的具体问题的问题 我有一个 ASP NET MVC 4 5 项目 我使用 NuGet 并将 Newtonsoft Json 添加到项目中 一旦我在代码中使用它 以
  • 创建粘性导航 CSS 和 jquery

    我目前正在为一个网站开发粘性导航 当导航变成时 我遇到了一些问题position fixed它似乎在跳跃 看起来 笨重 这是我想做的事情的小提琴 http jsfiddle net DKtLR http jsfiddle net DKtLR
  • 如何在 TypeScript 中使用 ES6 模块语法导入 angular.IInjectorService

    如何从 Angular IInjectorService 导入角度 d ts https github com borisyankov DefinitelyTyped blob master angularjs angular d ts使用
  • SQL - 对于 b 列中的每个值,a 列上的不同值

    我正在使用一张名为du vertrag 我正在尝试构建一个查询来选择不同的值id and status pairs 输入表 id status date 6251899 beantragt 20201008 6377042 beantrag
  • 使用 C# 解压缩 .gz 文件

    我有一个名为ZippedXmls tar gz 的焦油gunzip 文件 其中有2 个xml 我需要以编程方式解压缩该文件 输出应该是复制到文件夹中的 2 个 xml 如何使用 C 实现此目的 我使用过 Net的内置压缩流 http msd
  • Boost asio 发送和接收消息

    我正在尝试使用 TCP 从客户端和服务器发送和接收消息 我正在尝试使用线程 但我根本不知道该怎么做 我可以很好地连接到服务器 但我需要能够按需从两个地方发送和接收消息 我已经搜索了几个小时但一无所获 因为谷歌上的所有结果都过于复杂和混乱 s
  • 在 Audit.Net 中,有没有办法使用多个输出提供程序?

    我尝试设置下面的配置 但我认为只使用了其中之一 有没有办法将两者链接起来 或者有其他方法可以使用多个输出提供程序 Audit Core Configuration Setup UseElasticsearch config gt confi
  • 如何在 ubuntu 上重新安装 cassandra?

    我是 Ubutu linux Cassandra 的新手 我在我的 ubuntu 机器上使用 OpenJdk 测试了 Cassandra 有一些不错的文章解释了如何在 ubuntu 上安装 Cassandra 所以我可以这样做 我更改了一些
  • Git 中的文件级跟踪(同一目录中多个分支的文件)

    是否有任何脚本可以让人们记住某个目录中文件的单独分支 提交 以便可以同时处理同一目录中的分支 1 上的文件 1 和分支 2 上的文件 2 并让它们正确提交 如果没有我会自己实现 我的计划是为各种分支 存储库设置隐藏的签出目录 并使用这些文件
  • UITableView 中的实时搜索

    我已经实施了一个UI搜索栏用于查找其中的元素UI表格视图 一切似乎都工作正常 现在我需要对按下的每个键进行实时搜索文本域 并通过每按一次按钮来缩小搜索范围 因此 在开始编码之前 我想知道是否有任何内置库函数可以帮助我进行实时搜索 字符串比较
  • 对点进行排序,使连续点之间的最小欧氏距离最大化

    给定 3D 笛卡尔空间中的一组点 我正在寻找一种算法来对这些点进行排序 使得minimal两个连续点之间的欧几里得距离将最大化 如果算法倾向于最大化average连续点之间的欧氏距离 Edit 我已经交叉发布了https cstheory