node.js - 如何计算评分最高的最短路线?
问题描述
我试图找到一条长度小于或等于 5 的路线。节点也应该远离最大值 3。评级应该尽可能高。
列表:(我将添加起点和终点以查看它们是否到达终点:max_length =7)
//Starting point:14
//Number of Nodes:9
1 4.4
2 0.1
3 4.1
4 2.1
5 1.2
6 4.1
9 1.3
11 3.2
13 4.2
预期输出:(顺序无关紧要,我只是从最后一个节点开始)
[
[14 , 0] //added start
[11 , 3.2],
[9 , 1.3],
[6 , 4.1],
[3 , 4.1],
[1 , 4.4]
[0,0] //added end
]
为什么这条路线?因为它是长度为 5 的最佳评级。
想法:
- 计算
all routes
,然后filter
他们看看哪个评级更好。问题:stack overflow
- 直接选择节点
best ratings
。问题:local optima
no limitation
best ratings
建立时直接选择路线:问题:local optima
no limitation
- 寻找
shortest route
,然后寻找best rated
其中是否有任何路线。问题:multiple shortest routes
best routes have no limitation
- 计算
best rated
路线直到到达[0,0](我最好的尝试):问题local optima
comparing each root of a tree
,一次只有 2 个,并在 5 的长度或起点和终点 7 中获得最佳评价。picture
问题:我不知道如何比较每条路线而没有得到stack overflow
我的问题:
local optima
. 要获得最佳路线,您需要在开始时选择一个坏节点:not[13 , 4.2]因为最后的[1 , 4.4]由于评级而更好。stack overflow
;D 或者在我的情况下Maximum call stack size exceeded
,因为可能的路线太多,因为真正的测试有超过数千个节点。- 获得最大为 5 的最大路线。我只知道如何无限制地获得最小值和最大值,我不能只过滤,因为为了过滤数组必须包含所有路线并导致第二个问题。
问题:
- 如何在不计算每个根/路径的情况下仅比较树的 2 个根?因为否则它会溢出。
- 还有其他想法吗?
示例 5 的代码(计算直到 [0,0]):
解决方案
推荐阅读
- javascript - 仅当我从表单提交时才呈现反应组件
- javascript - javascript中的(函数)(变量)是什么意思?
- javascript - Node.js 未处理的拒绝错误
- python - 我可以返回img的src、alt和setsrc,但是我不能得到title和height的值,为什么?
- oracle - 在 UPDATE 期间触发列的默认值
- python - 灰度到三色转换
- react-native - 搜索时反应原生谷歌地方未定义不是对象
- html - 如何在 Spring Boot 应用程序中使用 Thymeleaf 加载 HashMap 和 ModelandView 对象值?
- c - 如何只交换堆节点的数据
- r - R错误中的简单函数