// Code Create for Project #include #include #include #include #include using namespace std; class Graph { public: unordered_map> graph; void addEdge(string u, string v) { graph[u].push_back(v); graph[v].push_back(u); } }; void bfs(Graph& graph, string start) { unordered_set visited; queue queue; queue.push(start); visited.insert(start); while (!queue.empty()) { string node = queue.front(); queue.pop(); cout << node << " "; // Print mutual friend for (string neighbor : graph.graph[node]) { if (visited.find(neighbor) == visited.end()) { queue.push(neighbor); visited.insert(neighbor); } } } } void dfs(Graph& graph, string start, unordered_set& visited) { cout << start << " "; // Print mutual friend visited.insert(start); for (string neighbor : graph.graph[start]) { if (visited.find(neighbor) == visited.end()) { dfs(graph, neighbor, visited); } } } void findMutualFriends(Graph& graph, string user) { cout << "Mutual friends (BFS): "; bfs(graph, user); cout << "\nMutual friends (DFS): "; unordered_set visited; dfs(graph, user, visited); } int main() { // Create a sample social media graph Graph socialGraph; socialGraph.addEdge("Dharmil", "Kavan"); socialGraph.addEdge("Kavan", "Vedant"); socialGraph.addEdge("Rajan", "Rutvik"); socialGraph.addEdge("Avinash", "Vedant"); socialGraph.addEdge("Preet", "Dharmil"); cout<<"Avinash Friends : "<