fork(1) download
  1. #include<queue>
  2. #include<iostream>
  3. using namespace std;
  4. bool isvisited[100];
  5. vector< vector<int> > adj(100);
  6. void bfs(int source)
  7. {
  8. queue<int> q;
  9. int s=source;
  10. q.push(s);
  11. while(!q.empty())
  12. {
  13. cout<<"size"<<adj[s].size()<<" ";
  14. for(int i=0;i<adj[s].size();i++)
  15. {
  16. if(!isvisited[adj[s][i]])
  17. {
  18. cout<<adj[s][i]<<" ";
  19. isvisited[adj[s][i]]=1;
  20. q.push(adj[s][i]);
  21. }
  22.  
  23. }
  24. q.pop();
  25. s=q.front();
  26. }
  27.  
  28. }
  29. int main()
  30. {
  31. int n;cin>>n;
  32. int m;cin>>m;
  33. int x;int y;
  34. for(int i=0;i<m;i++)
  35. {
  36. cin>>x;
  37. cin>>y;
  38. adj[x].push_back(y);
  39. adj[y].push_back(x);
  40. }
  41. int source;
  42. cout<<"enter source node";
  43. cin>>source;
  44. bfs(source);
  45.  
  46. return 0;
  47.  
  48.  
  49. }
  50.  
Success #stdin #stdout 0s 15240KB
stdin
Standard input is empty
stdout
enter source nodesize284 0 size284