Mid From PDF Coding C# Coding Interview

Number of connected components in undirected graph?

Short answer: int CountConnectedComponents(Dictionary<int, List<int>> graph) { var visited = new HashSet<int>(); int count = 0; Follow on: foreach (var node in graph.Keys) { if (!visited.Contains(node)) { DFS(node, graph, visited); count++; } } return count; } void DFS(int node, Dictionary<int, List<int>> graph, HashSet<int> visited) { visited.Add(node); foreach (var neighbor in graph[node]) { if (!visited.Contains(neighbor)) {…

Explain a bit more

DFS(neighbor, graph, visited); } } } Explanation: Run DFS on unvisited nodes, count how many times DFS starts.

Example code

int CountConnectedComponents(Dictionary<int, List<int>> graph) {
var visited = new HashSet<int>();
int count = 0; Follow on: foreach (var node in graph.Keys) {
if (!visited.Contains(node)) { DFS(node, graph, visited); count++; }
}
return count;
} void DFS(int node, Dictionary<int, List<int>> graph, HashSet<int> visited) { visited.Add(node); foreach (var neighbor in graph[node]) {
if (!visited.Contains(neighbor)) { DFS(neighbor, graph, visited); }
}
} Explanation: Run DFS on unvisited nodes, count how many times DFS starts.

Real-world example (ShopNest)

In coding rounds, state complexity aloud, write a clear ShopNest-flavored example (orders, carts), then handle edge cases (empty list, null, overflow).

Say this in the interview

  1. Define — one clear sentence (the short answer above).
  2. Example — relate it to a project like ShopNest or your real work.
  3. Trade-off — when you would not use it.
Toolliyo Assistant
Ask about tutorials, ebooks, training, pricing, mentor services, and support. I use public site content only—not admin or internal tools.

care@toolliyo.com

Need callback? Share your details