小哥余生 2022-04-26 18:49 采纳率: 0%
浏览 46
已结题

数组或者序列求排序问题,已知数组对象间部分前后关系。求解答。

因为小编主要使用Python实现,可能描述中会有Python语梗在里面。
进入正题:
例如:我有个数组对象 object[30] = new object[] {a0,b1,...x29 },我们暂定数组objectA 里面有30个对象。已知有很多数组元素中的大小关系。比方说:
已知 a0 < b1; b1 > x29 等。请满足条件的所有排列组合并展示,排列时小的在前,大的在后。
注意:a0 < b1 只能说明 ...a0 ..b1... 可能存在这样的排列不能说明 a0 后紧跟着 b1 。

我已经描述的很通俗,主要寻求满足这样的排列的最优方案,如有能有python 代码实现最好。VB.net,C# 也可以。也能看懂。或者说出一个解决方案也行,我来构代码。

另外说明一点:我现在的处理方式是先穷举所有排列后,然后逐个判断的每个数组元素的前后关系。说白了就是完全采用剔除方法实现。这样的缺点所有人都很能理解,比方说数组对象有100个时,常态的电脑就算多开线程/进程都很难实现。在没有量子计算机的时代,这种方式太low了。

  • 写回答

2条回答 默认 最新

  • A Python 萌新花花 2022-04-26 19:48
    关注

    可以参考拓扑排序,但是这个要求每个元素之间必须有依赖关系。你这个题目并没有说到每个元素之间有必定的依赖关系,所以可能还会需要穷举,但是比完全穷举强

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 8月19日
  • 创建了问题 4月26日

悬赏问题

  • ¥15 没输出运行不了什么问题
  • ¥20 输入import torch显示Intel MKL FATAL ERROR,系统驱动1%,: Cannot load mkl_intel_thread.dll.
  • ¥15 点云密度大则包围盒小
  • ¥15 nginx使用nfs进行服务器的数据共享
  • ¥15 C#i编程中so-ir-192编码的字符集转码UTF8问题
  • ¥15 51嵌入式入门按键小项目
  • ¥30 海外项目,如何降低Google Map接口费用?
  • ¥15 fluentmeshing
  • ¥15 手机/平板的浏览器里如何实现类似荧光笔的效果
  • ¥15 盘古气象大模型调用(python)