zoukankan      html  css  js  c++  java
  • javascript算法 最短路径问题

    var obj = {
        1: [2, 3],
        2: [1, 4, 5],
        3: [1, 7, 8],
        4: [2, 7],
        7: [4, 8],
    }
    var 起点 = 1
    var 终点 = 8
    
    var f = 起点 => 终点 => 数据 => 路径 => {
        if (起点 == 终点)
            return [路径]
        if (路径.length == Object.keys(数据).length + 1)
            return [[]]
        if (obj[起点] == null)
            return [[]]
        return obj[起点].filter(a => !路径.includes(a)).map(a => f(a)(终点)(数据)([...路径, a])).flat().filter(a => a.length != 0)
    }
    
    console.log(
        f(起点)(终点)(obj)([起点])
    )

  • 相关阅读:
    Shiro
    RabbitMQ
    RabbitMQ
    RabbitMQ
    RabbitMQ
    RabbitMQ
    RabbitMQ
    Java
    Java
    Java
  • 原文地址:https://www.cnblogs.com/foxcharon/p/12905119.html
Copyright © 2011-2022 走看看