【数据结构_BFS_1069】图的深度优先录入

来源:互联网 发布:云图tv电视直播mac版 编辑:程序博客网 时间:2024/06/01 10:17


#include <stdio.h>#include <stdlib.h>#include <queue>#include <iostream>using namespace std;int n,maps[105][105],vis[1005]={0};char str[1005];queue<char>q;void bfs(int tar){cout<<q.front();vis[tar]=1;for(int i=0;i<n;i++){if(maps[tar][i]!=0 && vis[i]==0){q.push(str[i]);vis[i]=1;}}q.pop();if(!q.empty()){int e;for(i=0;i<n;i++){if(str[i]==q.front()){e=i;break;}}bfs(e);}}int main(){int i,j;cin>>n;cin>>str;for(i=0;i<n;i++){for(j=0;j<n;j++){cin>>maps[i][j];}}char t;cin>>t;int tar;for(i=0;i<n;i++){if(t==str[i]){tar=i;break;}}vis[tar]=1;q.push(str[tar]);bfs(tar);return 0;}


0 0