Friday, 20 February 2026

Biprariate Graph check coorect approach soln (BFS)leetcode accepted


   
    void BFS(vector<vector<int>>&adj,int node,vector<int>&colors){
        queue<int>q;
        int blue=1;
        int red=2;
     
        q.push(node);
        colors[node]=blue;
       
        while(!q.empty()){
            int x=q.front();
            q.pop();
            for(int y:adj[x]){
                if(!colors[y]){
                    q.push(y);
                    colors[y]=(colors[x]==blue)?red:blue;
                }
            }
         
        }



    }
    bool isBipartite(vector<vector<int>>& graph) {
         int n=graph.size();

         vector<int>colors(n,0);
         for(int i=0;i<n;i++){
            if(!colors[i])BFS(graph,i,colors);
         }
         for(int i=0;i<n;i++){
            for(int x:graph[i]){
                if(colors[i]==colors[x])return false;
            }
         }
         return true;

    }

No comments:

Post a Comment

SDE floyd-warshall algorithm

 // User function template for C++ class Solution {   public:     void floydWarshall(vector<vector<int>> &dist) {         //...