gpt4 book ai didi

javascript - 查找图中具有最小值的节点

转载 作者:行者123 更新时间:2023-11-28 03:23:23 25 4
gpt4 key购买 nike

有一个图,节点由对象表示:

Node = {
value: <number>,
children: [Node, Node ... Node]
}

我需要找到具有最小字段的节点。

我已经找到了图表的最小值,但不知道如何返回节点

const min = (graph) => !graph.children ? graph.value :
Math.min(graph.value, ...graph.children.map(min));

图表示例:

{value:31,children:[{value:68},{value:10,children:[{value:100,children:[{value:21,children:[{value:21},{value:64}]},{value:86}]}]}]}

答案示例:

{value:10,children:[{value:100,children:[{value:21,children:[{value:21},{value:64}]},{value:86}]}]}

最佳答案

这是使用reduce的一种方法:

function min(G){
if (!G.children)
return G
else
return G.children.reduce(function(acc, child){
let minChild = min(child)
if (minChild.value < acc.value)
return minChild
return acc
}, G)
}

var G = {value:31,children:[{value:68},{value:10,children:[{value:100,children:[{value:21,children:[{value:21},{value:64}]},{value:86}]}]}]}

console.log(JSON.stringify(min(G)))

关于javascript - 查找图中具有最小值的节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58901316/

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