[Leetcode]847. Shortest Path Visiting All Nodes(BFS|DP)

题解

题意

给出一个无向图,求遍历所有点的最小花费

分析

1.BFS,设置dis[status][k]表示遍历的点数状态为status,当前遍历到k的最小花费,一次BFS即可
2.使用DP

代码

//BFS
class Solution {
public:
    int dis[1<<12][12];
    int shortestPathLength(vector>& graph) {
        int n=graph.size();
        if(n==0) return 0;
        for(int i=0;i<(1< >q;
        for(int i=0;ip=q.front();q.pop();
            int x=q.front().first,y=q.front().second;
            if(x+1==(1<
//DP
class Solution {
public:
    int dp[1<<12][12];
    int shortestPathLength(vector>& graph) {
        int n=graph.size();
        if(n==0) return 0;
        for(int i=0;i<(1<

转载于:https://www.cnblogs.com/chendl111/p/9148972.html

你可能感兴趣的:([Leetcode]847. Shortest Path Visiting All Nodes(BFS|DP))