与Graph daa结构相关

时间:2017-03-30 01:13:15

标签: data-structures graph

任何人都可以区分隐式图和显式图。实际上,我试图阅读与此主题相关的维基百科页面,但感到困惑。

1 个答案:

答案 0 :(得分:0)

显式图是一个明确定义的图,我们知道有多少节点和边以及哪些节点之间有边缘。

隐式图未明确定义,这意味着我们不知道它的节点和边缘,而是在我们进行某个过程时构建图形。 这在回溯搜索中非常常见。

例如:用于生成集{A,B,C}的所有子集的简单回溯

pin

我们没有定义任何图形,但我们正在构建和使用以下树:(递归树不是上面代码的精确值,但它非常相似)

#include <iostream>
using namespace std;

char elements[4]= "ABC";

void powerSet(int n, string subset){
    if(n < 0){
        cout<< subset <<endl;
        return;
    }

    powerSet(n-1, subset);
    powerSet(n-1, subset+ elements[n]);
}

int main(){
    powerSet(2, string(""));
}