কম্পিউটার

2D অ্যারে ব্যবহার করে গ্রাফ প্রতিনিধিত্ব করার জন্য C++ প্রোগ্রাম


এটি একটি C++ প্রোগ্রাম 2D অ্যারে ব্যবহার করে একটি গ্রাফ উপস্থাপন করে।

এই অ্যালগরিদমের সময় জটিলতা হল O(v*v).

অ্যালগরিদম

Begin
   Take the input of the number of vertex ‘v’ and edges ‘e’.
   Assign memory to the graph[][] matrix.
   Take the input of ‘e’ pairs of vertexes of the given graph in graph[][].
   For each pair of connected vertex(v1, v2), store 1 in the graph[][] at the index (v1, v2) and (v2, v1).
   Print the matrix using PrintMatrix().
End
ব্যবহার করে ম্যাট্রিক্স প্রিন্ট করুন

উদাহরণ কোড

#include<iostream>
#include<iomanip>
using namespace std;
void PrintMatrix(int **matrix, int n) {
   int i, j;
      cout<<"\n\n"<<setw(4)<<"";
   for(i = 0; i < n; i++)
      cout<<setw(3)<<"("<<i+1<<")";
      cout<<"\n\n";
   for(i = 0; i < n; i++) {
      cout<<setw(3)<<"("<<i+1<<")";
      for(j = 0; j < n; j++) {
         cout<<setw(4)<<matrix[i][j];
      }
      cout<<"\n\n";
   }
}
int main() {
   int i, v, e, j, v1, v2;
   cout<<"Enter the number of vertexes of the graph: ";
   cin>>v;
   int **graph;
   graph = new int*[v];
   for(i = 0; i < v; i++) {
      graph[i] = new int[v];
      for(j = 0; j < v; j++) graph[i][j] = 0;
   }
   cout<<"\nEnter the number of edges of the graph: ";
   cin>>e;
   for(i = 0; i < e; i++) {
      cout<<"\nEnter the vertex pair for edge "<<i+1;
      cout<<"\nV(1): ";
      cin>>v1;
      cout<<"V(2): ";
      cin>>v2;
      graph[v1-1][v2-1] = 1;
      graph[v2-1][v1-1] = 1;
   }
   PrintMatrix(graph, v);
}

আউটপুট

Enter the number of vertexes of the graph: 5
Enter the number of edges of the graph: 4
Enter the vertex pair for edge 1
V(1): 2
V(2): 1
Enter the vertex pair for edge 2
V(1): 3
V(2): 2
Enter the vertex pair for edge 3
V(1): 1
V(2): 1
Enter the vertex pair for edge 4
V(1): 3
V(2): 1
(1) (2) (3) (4) (5)
(1) 1 1 1 0 0
(2) 1 0 1 0 0
(3) 1 1 0 0 0
(4) 0 0 0 0 0
(5) 0 0 0 0 0

  1. সংলগ্নতা তালিকা ব্যবহার করে গ্রাফ প্রতিনিধিত্ব করার জন্য C++ প্রোগ্রাম

  2. ইনসিডেন্স ম্যাট্রিক্স ব্যবহার করে গ্রাফ প্রতিনিধিত্ব করার জন্য C++ প্রোগ্রাম

  3. অ্যাডজাসেন্সি ম্যাট্রিক্স ব্যবহার করে গ্রাফ প্রতিনিধিত্ব করার জন্য C++ প্রোগ্রাম

  4. ডিএফএস ব্যবহার করে নির্দেশিত গ্রাফের সংযোগ পরীক্ষা করার জন্য C++ প্রোগ্রাম