Interview Q&A

Master technical and career interviews with structured answers—short definition, real examples, pitfalls, and how to answer in 60–90 seconds.

4608 total questions 4508 technical 100 career & HR 4272 from PDF library

Showing 601–625 of 3281

Career & HR topics

By tech stack

Popular tracks

Mid PDF
Remove duplicate elements from an array (without?

Short answer: LINQ Distinct()) Logic Use a HashSet to track seen elements. Add elements only if they are not already present. int[] arr = { 1, 2, 3, 2, 4, 1 }; HashSet<int> set = new HashSet<int>(); List<i…

Coding Scenarios Read answer
Mid PDF
Find the nth Fibonacci Number int Fibonacci(int n) { if (n <= 1) return n; int a = 0, b = 1; for (int i = 2; i <= n; i++) { int temp = a + b;

Short answer: = b; b = temp; } return b; } Explanation: Iterative DP approach; each Fibonacci number is sum of two previous. Explain a bit more Follow on: = b; b = temp; } return b; } Explanation: Iterative DP approach;…

Coding Read answer
Mid PDF
Find the single non-repeated element in an array where every other?

Short answer: element appears twice public int SingleNonRepeated(int[] nums) { Example code int result = 0; foreach (int num in nums) { result ^= num; } return result; } Explanation: XOR of a number with itself is 0; XOR…

Coding Read answer
Mid PDF
Find all anagrams of a string in another string?

Short answer: public List&lt;int&gt; FindAnagrams(string s, string p) { List&lt;int&gt; result = new List&lt;int&gt;(); if (p.Length &gt; s.Length) return result; int[] pCount = new int[26]; int[] sCount = new int[26]; F…

Coding Read answer
Mid PDF
Find all prime factors of a number?

Short answer: public List&lt;int&gt; PrimeFactors(int n) { List&lt;int&gt; factors = new List&lt;int&gt;(); // Print the number of 2s that divide n while (n % 2 == 0) { factors.Add(2); n /= 2; } // n must be odd at this…

Coding Read answer
Mid PDF
Find the kth largest element in an unsorted array using Quickselect?

Short answer: public int FindKthLargest(int[] nums, int k) { return QuickSelect(nums, 0, nums.Length - 1, nums.Length - k); } private int QuickSelect(int[] nums, int left, int right, int kSmallest) { if (left == right) r…

Coding Read answer
Mid PDF
Unique Paths in a Grid?

Short answer: int UniquePaths(int m, int n) { int[,] dp = new int[m, n]; for (int i = 0; i &lt; m; i++) dp[i, 0] = 1; for (int j = 0; j &lt; n; j++) dp[0, j] = 1; for (int i = 1; i &lt; m; i++) { for (int j = 1; j &lt; n…

Coding Read answer
Mid PDF
BFS on a graph (adjacency list)?

Short answer: void BFS(Dictionary&lt;int, List&lt;int&gt;&gt; graph, int start) { var visited = new HashSet&lt;int&gt;(); var queue = new Queue&lt;int&gt;(); queue.Enqueue(start); visited.Add(start); while (queue.Count &…

Coding Read answer
Mid PDF
Convert a binary tree to a doubly linked list (in-order)?

Short answer: public class TreeNode { public int val; public TreeNode left, right; public TreeNode(int x) { val = x; } } TreeNode prev = null; TreeNode head = null; TreeNode ConvertToDLL(TreeNode root) { if (root == null…

Coding Read answer
Mid PDF
Implement a queue using stacks (efficient enqueue and dequeue)?

Short answer: public class MyQueue { private Stack&lt;int&gt; stackIn = new Stack&lt;int&gt;(); private Stack&lt;int&gt; stackOut = new Stack&lt;int&gt;(); // Enqueue: push into stackIn (O(1)) public void Enqueue(int x)…

Coding Read answer
Mid PDF
Detect a cycle in a linked list and return the node where the cycle?

Short answer: begins public class ListNode { Example code public int val; public ListNode next; public ListNode(int x) { val = x; next = null; } } ListNode DetectCycle(ListNode head) { if (head == null) return null; List…

Coding Read answer
Mid PDF
Count Inversions in an Array?

Short answer: int MergeSortAndCount(int[] arr, int[] temp, int left, int right) { int invCount = 0; if (right &gt; left) { int mid = (right + left) / 2; invCount += MergeSortAndCount(arr, temp, left, mid); invCount += Me…

Coding Read answer
Mid PDF
Greatest Common Divisor (GCD) — Euclidean?

Short answer: Algorithm int GCD(int a, int b) { Follow on: while (b != 0) { Example code int temp = b; b = a % b; a = temp; } return a; } Explanation: Repeatedly replace (a, b) with (b, a mod b) until b is 0; then a is t…

Coding Read answer
Mid PDF
Quicksort?

Short answer: void QuickSort(int[] arr, int low, int high) { Example code if (low &lt; high) Follow on: { int pi = Partition(arr, low, high); QuickSort(arr, low, pi - 1); QuickSort(arr, pi + 1, high); } } int Partition(i…

Coding Read answer
Mid PDF
Find the nth Fibonacci Number?

Short answer: int Fibonacci(int n) { if (n &lt;= 1) return n; int a = 0, b = 1; for (int i = 2; i &lt;= n; i++) { int temp = a + b; a = b; b = temp; } return b; } Explanation: Iterative DP approach; each Fibonacci number…

Coding Read answer
Mid PDF
Count the number of set bits (1s) in binary representation of an integer public int CountSetBits(int n) { int count = 0; while (n != 0) { count += n & 1; n >>= 1; } return count; } Explanation: Shift through each bit; add 1 to count if least significant bit is set.

Short answer: lternative using Brian Kernighan’s algorithm: public int CountSetBits(int n) { int count = 0; while (n != 0) { n &amp;amp;= (n - 1); // Drops the lowest set bit count++; } return count; } Follow on: lternat…

Coding Read answer
Mid PDF
You can also resolve them in Visual Studio or VS Code, which shows a nice diff view. Example: Two developers edit the UserController.cs file — one renames a method, another changes parameters — a merge conflict occurs that must be resolved manually. 6⃣ What’s the difference between Git and TFVC (Team Foundation Version Control)?

Short answer: Feature Git TFVC Type Distributed Centralized History Full copy on each developer’s machine Stored on server Branching Lightweight and fast Heavier and slower Offline work Possible Needs connection Common u…

DevOps Read answer
Mid PDF
What tasks are commonly used in .NET build pipelines?

Short answer: What tasks are commonly used in .NET build pipelines? Answer: Common tasks: UseDotNet@2 → Installs .NET SDK. NuGetCommand@2 → Restores NuGet packages. DotNetCoreCLI@2 → Builds, tests, and publishes your app…

DevOps Read answer
Mid PDF
Testing and validating pipeline parity. Scenario:?

Short answer: company using Jenkins moves to Azure DevOps to unify code and pipelines. They convert Jenkinsfile logic to YAML, using tasks like DotNetCoreCLI@2 and zureWebApp@1. Real-world example (ShopNest) ShopNest’s Y…

DevOps Read answer
Mid PDF
Track: Bugs and tasks are managed in Azure Boards. Example:?

Short answer: .NET Core API gets built automatically when code is pushed to main. If tests pass, it’s deployed to staging — and after approval, to production. Real-world example (ShopNest) A “Add UPI payment” feature is…

DevOps Read answer
Mid PDF
Testing and validating pipeline parity. Scenario: A company using Jenkins moves to Azure DevOps to unify code and pipelines. They convert Jenkinsfile logic to YAML, using tasks like DotNetCoreCLI@2 and AzureWebApp@1. Eventually, builds run in Azure-hosted agents with better visibility and governance. 11⃣ How would you implement zero-downtime deployment for an ASP.NET Core API?

Short answer: Zero-downtime means your API stays live while deploying new versions. Ways to achieve it: Use Azure App Service Deployment Slots (swap after warm-up). Real-world example (ShopNest) ShopNest’s YAML pipeline…

DevOps Read answer
Mid PDF
How do you restore NuGet packages in a build pipeline?

Short answer: How do you restore NuGet packages in a build pipeline? Answer: Use either: script: dotnet restore or task: NuGetCommand@2 inputs: command: 'restore' This pulls dependencies from NuGet.org or an internal fee…

DevOps Read answer
Mid PDF
How do you perform rollback in case of a failed deployment?

Short answer: How do you perform rollback in case of a failed deployment? Explain a bit more Answer: There are several ways: Use deployment slots — just swap back to the previous slot. Re-deploy a previous successful rel…

DevOps Read answer
Mid PDF
How do you run unit tests and publish test results in a pipeline?

Short answer: How do you run unit tests and publish test results in a pipeline? Answer: You use the DotNetCoreCLI@2 task with test command and publish results. Example (YAML): task: DotNetCoreCLI@2 inputs: command: 'test…

DevOps Read answer
Mid PDF
What are service connections in Azure DevOps?

Short answer: What are service connections in Azure DevOps? Answer: A service connection is a secure link between Azure DevOps and external systems (like Azure, AWS, GitHub, or Docker Hub). Example: If your pipeline need…

DevOps Read answer

C# Coding Interview C# Programming Tutorial · Coding Scenarios

Short answer: LINQ Distinct()) Logic Use a HashSet to track seen elements. Add elements only if they are not already present. int[] arr = { 1, 2, 3, 2, 4, 1 }; HashSet<int> set = new HashSet<int>(); List<int> result = new List<int>(); foreach (int num in arr) { if (!set.Contains(num)) { set.Add(num); result.Add(num); } } Why this works: HashSet ensures uniqueness with O(1) lookup.

Example code

LINQ Distinct()) Logic Use a HashSet to track seen elements. Add elements only if they are not already present. int[] arr = { 1, 2, 3, 2, 4, 1 };
HashSet<int> set = new HashSet<int>();
List<int> result = new List<int>();
foreach (int num in arr)
{
if (!set.Contains(num))
{ set.Add(num); result.Add(num); }
} Why this works: HashSet ensures uniqueness with O(1) lookup.

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.
Permalink & share

C# Coding Interview C# Programming Tutorial · Coding

Short answer: = b; b = temp; } return b; } Explanation: Iterative DP approach; each Fibonacci number is sum of two previous.

Explain a bit more

Follow on: = b; b = temp; } return b; } Explanation: Iterative DP approach; each Fibonacci number is sum of two previous. Follow on: = b; b = temp; } return b; } Explanation: Iterative DP approach; each Fibonacci number is sum of two previous. Follow on: = b; b = temp; } return b; } Explanation: Iterative DP approach; each Fibonacci number is sum of two previous. Follow on:

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.
Permalink & share

C# Coding Interview C# Programming Tutorial · Coding

Short answer: element appears twice public int SingleNonRepeated(int[] nums) {

Example code

int result = 0;
foreach (int num in nums) {
result ^= num;
}
return result;
} Explanation: XOR of a number with itself is 0; XOR with 0 is the number. So duplicates cancel out, leaving the unique number. Follow on:

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.
Permalink & share

C# Coding Interview C# Programming Tutorial · Coding

Short answer: public List<int> FindAnagrams(string s, string p) { List<int> result = new List<int>(); if (p.Length > s.Length) return result; int[] pCount = new int[26]; int[] sCount = new int[26]; Follow on: for (int i = 0; i < p.Length; i++) { pCount[p[i] - 'a']++; sCount[s[i] - 'a']++; } if (Enumerable.SequenceEqual(pCount, sCount)) result.Add(0); for (int i = p.Length; i < s.Length; i++) { sCount[s[i] - 'a']++; sCount[s[i - p.

Explain a bit more

Length] - 'a']--; if (Enumerable.SequenceEqual(pCount, sCount)) result.Add(i - p.Length + 1); } return result; } Explanation: Sliding window with frequency count arrays for the pattern and current window.

Example code

public List<int> FindAnagrams(string s, string p) {
List<int> result = new List<int>();
if (p.Length > s.Length) return result;
int[] pCount = new int[26];
int[] sCount = new int[26]; Follow on: for (int i = 0; i < p.Length; i++) { pCount[p[i] - 'a']++; sCount[s[i] - 'a']++; }
if (Enumerable.SequenceEqual(pCount, sCount)) result.Add(0); for (int i = p.Length; i < s.Length; i++) { sCount[s[i] - 'a']++; sCount[s[i - p.Length] - 'a']--; if (Enumerable.SequenceEqual(pCount, sCount)) result.Add(i - p.Length + 1); }
return result;
} Explanation: Sliding window with frequency count arrays for the pattern and current window.

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.
Permalink & share

C# Coding Interview C# Programming Tutorial · Coding

Short answer: public List<int> PrimeFactors(int n) { List<int> factors = new List<int>(); // Print the number of 2s that divide n while (n % 2 == 0) { factors.Add(2); n /= 2; } // n must be odd at this point for (int i = 3; i * i <= n; i += 2) { while (n % i == 0) { factors.Add(i); n /= i; } } Follow on: // If n is a prime number > 2 if (n > 2) { factors.Add(n); } return factors; } Explanation: We repeatedly divide by 2, then…

Explain a bit more

check odd factors up to √n. If leftover n > 2, it's prime.

Example code

public List<int> PrimeFactors(int n) {
List<int> factors = new List<int>(); // Print the number of 2s that divide n while (n % 2 == 0) { factors.Add(2); n /= 2;
} // n must be odd at this point for (int i = 3; i * i <= n; i += 2) { while (n % i == 0) { factors.Add(i); n /= i;
}
} Follow on: // If n is a prime number > 2 if (n > 2) { factors.Add(n); }
return factors;
} Explanation: We repeatedly divide by 2, then check odd factors up to √n. If leftover n > 2, it's prime.

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.
Permalink & share

C# Coding Interview C# Programming Tutorial · Coding

Short answer: public int FindKthLargest(int[] nums, int k) { return QuickSelect(nums, 0, nums.Length - 1, nums.Length - k); } private int QuickSelect(int[] nums, int left, int right, int kSmallest) { if (left == right) return nums[left]; int pivotIndex = Partition(nums, left, right); if (kSmallest == pivotIndex) return nums[kSmallest]; else if (kSmallest < pivotIndex) return QuickSelect(nums, left, pivotIndex - 1, kSmallest);…

Explain a bit more

else return QuickSelect(nums, pivotIndex + 1, right, kSmallest); } private int Partition(int[] nums, int left, int right) { int pivot = nums[right]; int i = left; for (int j = left; j < right; j++) { if (nums[j] <= pivot) { Swap(nums, i, j); i++; } } Swap(nums, i, right); return i; } private void Swap(int[] nums, int i, int j) { int temp = nums[i]; nums[i] = nums[j]; nums[j] = temp; } Follow on: Explanation: Quickselect partitions the array like Quicksort and recursively searches for the kth smallest element. Here, nums.Length - k gives the kth largest.

Example code

public int FindKthLargest(int[] nums, int k) {
return QuickSelect(nums, 0, nums.Length - 1, nums.Length - k);
}
private int QuickSelect(int[] nums, int left, int right, int kSmallest) { if (left == right) return nums[left];
int pivotIndex = Partition(nums, left, right);
if (kSmallest == pivotIndex)
return nums[kSmallest]; else if (kSmallest < pivotIndex) return QuickSelect(nums, left, pivotIndex - 1, kSmallest); else return QuickSelect(nums, pivotIndex + 1, right, kSmallest);
}
private int Partition(int[] nums, int left, int right) {
int pivot = nums[right];
int i = left;
for (int j = left; j < right; j++) {
if (nums[j] <= pivot) { Swap(nums, i, j); i++; }
} Swap(nums, i, right); return i;
}
private void Swap(int[] nums, int i, int j) {
int temp = nums[i];
nums[i] = nums[j];
nums[j] = temp;
} Follow on: Explanation: Quickselect partitions the array like Quicksort and recursively searches for the kth smallest element. Here, nums.Length - k gives the kth largest.

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.
Permalink & share

C# Coding Interview C# Programming Tutorial · Coding

Short answer: int UniquePaths(int m, int n) { int[,] dp = new int[m, n]; for (int i = 0; i < m; i++) dp[i, 0] = 1; for (int j = 0; j < n; j++) dp[0, j] = 1; for (int i = 1; i < m; i++) { for (int j = 1; j < n; j++) { dp[i, j] = dp[i - 1, j] + dp[i, j - 1]; } } return dp[m - 1, n - 1]; } Follow on:

Example code

int UniquePaths(int m, int n) {
int[,] dp = new int[m, n];
for (int i = 0; i < m; i++) dp[i, 0] = 1;
for (int j = 0; j < n; j++) dp[0, j] = 1;
for (int i = 1; i < m; i++) {
for (int j = 1; j < n; j++) {
dp[i, j] = dp[i - 1, j] + dp[i, j - 1];
}
}
return dp[m - 1, n - 1];
} Follow on:

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.
Permalink & share

C# Coding Interview C# Programming Tutorial · Coding

Short answer: void BFS(Dictionary<int, List<int>> graph, int start) { var visited = new HashSet<int>(); var queue = new Queue<int>(); queue.Enqueue(start); visited.Add(start); while (queue.Count > 0) { int node = queue.Dequeue(); Console.WriteLine(node); foreach (var neighbor in graph[node]) { if (!visited.Contains(neighbor)) { visited.Add(neighbor); queue.Enqueue(neighbor); } } } } Explanation: Classic BFS using a queue and…

Example code

void BFS(Dictionary<int, List<int>> graph, int start) { var visited = new HashSet<int>();
var queue = new Queue<int>(); queue.Enqueue(start); visited.Add(start); while (queue.Count > 0) { int node = queue.Dequeue(); Console.WriteLine(node); foreach (var neighbor in graph[node]) {
if (!visited.Contains(neighbor)) { visited.Add(neighbor); queue.Enqueue(neighbor); }
}
}
} Explanation: Classic BFS using a queue and visited set.

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.
Permalink & share

C# Coding Interview C# Programming Tutorial · Coding

Short answer: public class TreeNode { public int val; public TreeNode left, right; public TreeNode(int x) { val = x; } } TreeNode prev = null; TreeNode head = null; TreeNode ConvertToDLL(TreeNode root) { if (root == null) return null; ConvertToDLL(root.left); if (prev == null) { head = root; // first node becomes head } else { root.left = prev; Follow on: prev.right = root; } prev = root; ConvertToDLL(root.right); return head; }…

Explain a bit more

Explanation: Inorder traversal connects nodes as doubly linked list by linking current with previous node.

Example code

public class TreeNode {
public int val;
public TreeNode left, right;
public TreeNode(int x) { val = x; }
}
TreeNode prev = null;
TreeNode head = null; TreeNode ConvertToDLL(TreeNode root) { if (root == null) return null; ConvertToDLL(root.left); if (prev == null) {
head = root; // first node becomes head } else { root.left = prev; Follow on: prev.right = root;
}
prev = root; ConvertToDLL(root.right); return head;
} Explanation: Inorder traversal connects nodes as doubly linked list by linking current with previous node.

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.
Permalink & share

C# Coding Interview C# Programming Tutorial · Coding

Short answer: public class MyQueue { private Stack<int> stackIn = new Stack<int>(); private Stack<int> stackOut = new Stack<int>(); // Enqueue: push into stackIn (O(1)) public void Enqueue(int x) { stackIn.Push(x); } // Dequeue: if stackOut empty, pour all from stackIn to stackOut, then pop (amortized O(1)) public int Dequeue() { if (stackOut.Count == 0) { while (stackIn.Count > 0) { stackOut.Push(stackIn.Pop()); } } return…

Explain a bit more

stackOut.Pop(); } public int Peek() { if (stackOut.Count == 0) { while (stackIn.Count > 0) { stackOut.Push(stackIn.Pop()); } } return stackOut.Peek(); } public bool IsEmpty() { return stackIn.Count == 0 && stackOut.Count == 0; } } Follow on: Explanation: Two stacks are used: stackIn for enqueue, stackOut for dequeue. Elements are transferred only when needed, making both operations amortized O(1).

Example code

public class MyQueue {
private Stack<int> stackIn = new Stack<int>();
private Stack<int> stackOut = new Stack<int>(); // Enqueue: push into stackIn (O(1)) public void Enqueue(int x) { stackIn.Push(x); } // Dequeue: if stackOut empty, pour all from stackIn to stackOut, then pop (amortized O(1)) public int Dequeue() {
if (stackOut.Count == 0) { while (stackIn.Count > 0) { stackOut.Push(stackIn.Pop()); }
}
return stackOut.Pop();
}
public int Peek() {
if (stackOut.Count == 0) { while (stackIn.Count > 0) { stackOut.Push(stackIn.Pop()); }
}
return stackOut.Peek();
}
public bool IsEmpty() {
return stackIn.Count == 0 && stackOut.Count == 0;
}
} Follow on: Explanation: Two stacks are used: stackIn for enqueue, stackOut for dequeue. Elements are transferred only when needed, making both operations amortized O(1).

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.
Permalink & share

C# Coding Interview C# Programming Tutorial · Coding

Short answer: begins public class ListNode {

Example code

public int val;
public ListNode next;
public ListNode(int x) { val = x; next = null; }
}
ListNode DetectCycle(ListNode head) {
if (head == null) return null;
ListNode slow = head, fast = head; Follow on: // Detect cycle using Floyd's Tortoise and Hare while (fast != null && fast.next != null) { slow = slow.next;
fast = fast.next.next;
if (slow == fast) { // cycle detected
ListNode ptr = head; while (ptr != slow) { ptr = ptr.next;
slow = slow.next;
}
return ptr; // start node of cycle
}
}
return null; // no cycle
} Explanation: First detect cycle meeting point with two pointers. Then find start node by moving one pointer from head and one from meeting point until they meet.

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.
Permalink & share

C# Coding Interview C# Programming Tutorial · Coding

Short answer: int MergeSortAndCount(int[] arr, int[] temp, int left, int right) { int invCount = 0; if (right > left) { int mid = (right + left) / 2; invCount += MergeSortAndCount(arr, temp, left, mid); invCount += MergeSortAndCount(arr, temp, mid + 1, right); invCount += Merge(arr, temp, left, mid + 1, right); } return invCount; } int Merge(int[] arr, int[] temp, int left, int mid, int right) { int i = left, j = mid, k = left;…

Explain a bit more

int invCount = 0; while (i <= mid - 1 && j <= right) { if (arr[i] <= arr[j]) temp[k++] = arr[i++]; else { temp[k++] = arr[j++]; invCount += (mid - i); // Count inversions } } while (i <= mid - 1) temp[k++] = arr[i++]; Follow on: while (j <= right) temp[k++] = arr[j++]; for (int idx = left; idx <= right; idx++) arr[idx] = temp[idx]; return invCount; } Explanation: Using a modified merge sort to count pairs where arr[i] > arr[j] for i < j efficiently.

Example code

int MergeSortAndCount(int[] arr, int[] temp, int left, int right)
{
int invCount = 0;
if (right > left)
{
int mid = (right + left) / 2;
invCount += MergeSortAndCount(arr, temp, left, mid);
invCount += MergeSortAndCount(arr, temp, mid + 1, right);
invCount += Merge(arr, temp, left, mid + 1, right);
}
return invCount;
}
int Merge(int[] arr, int[] temp, int left, int mid, int right)
{
int i = left, j = mid, k = left;
int invCount = 0; while (i <= mid - 1 && j <= right) {
if (arr[i] <= arr[j])
temp[k++] = arr[i++]; else {
temp[k++] = arr[j++];
invCount += (mid - i); // Count inversions
}
} while (i <= mid - 1) temp[k++] = arr[i++]; Follow on: while (j <= right) temp[k++] = arr[j++];
for (int idx = left; idx <= right; idx++)
arr[idx] = temp[idx];
return invCount;
} Explanation: Using a modified merge sort to count pairs where arr[i] > arr[j] for i < j efficiently.

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.
Permalink & share

C# Coding Interview C# Programming Tutorial · Coding

Short answer: Algorithm int GCD(int a, int b) { Follow on: while (b != 0) {

Example code

int temp = b;
b = a % b;
a = temp;
}
return a;
} Explanation: Repeatedly replace (a, b) with (b, a mod b) until b is 0; then a is the GCD.

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.
Permalink & share

C# Coding Interview C# Programming Tutorial · Coding

Short answer: void QuickSort(int[] arr, int low, int high) {

Example code

if (low < high) Follow on: {
int pi = Partition(arr, low, high); QuickSort(arr, low, pi - 1); QuickSort(arr, pi + 1, high); }
}
int Partition(int[] arr, int low, int high)
{
int pivot = arr[high];
int i = low - 1;
for (int j = low; j < high; j++)
{
if (arr[j] < pivot)
{ i++; (arr[i], arr[j]) = (arr[j], arr[i]);
}
}
(arr[i + 1], arr[high]) = (arr[high], arr[i + 1]);
return i + 1;
} Explanation: Choose last element as pivot, partition array so left < pivot < right, recursively sort subarrays.

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.
Permalink & share

C# Coding Interview C# Programming Tutorial · Coding

Short answer: int Fibonacci(int n) { if (n <= 1) return n; int a = 0, b = 1; for (int i = 2; i <= n; i++) { int temp = a + b; a = b; b = temp; } return b; } Explanation: Iterative DP approach; each Fibonacci number is sum of two previous. Follow on:

Example code

int Fibonacci(int n)
{
if (n <= 1) return n;
int a = 0, b = 1;
for (int i = 2; i <= n; i++)
{
int temp = a + b;
a = b;
b = temp;
}
return b;
} Explanation: Iterative DP approach; each Fibonacci number is sum of two previous. Follow on:

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.
Permalink & share

C# Coding Interview C# Programming Tutorial · Coding

Short answer: lternative using Brian Kernighan’s algorithm: public int CountSetBits(int n) { int count = 0; while (n != 0) { n &amp;= (n - 1); // Drops the lowest set bit count++; } return count; } Follow on: lternative using Brian Kernighan’s algorithm: public int CountSetBits(int n) { int count = 0; while (n != 0) { n &amp;= (n - 1); // Drops… the lowest set bit…… lternative using Brian Kernighan’s algorithm: public int…

Explain a bit more

CountSetBits(int n) { int count = 0; while (n != 0) { n &amp;= (n - 1); // Drops the lowest set bit count++; } return count; } Follow on: lternative using Brian Kernighan’s algorithm: public int CountSetBits(int n) { int count = 0; while (n != 0) { n &amp;= (n - 1); // Drops… the lowest set bit count++; } return count; } Follow on:

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.
Permalink & share

Azure DevOps Microsoft Azure Tutorial · DevOps

Short answer: Feature Git TFVC Type Distributed Centralized History Full copy on each developer’s machine Stored on server Branching Lightweight and fast Heavier and slower Offline work Possible Needs connection Common use Modern DevOps projects Legacy TFS projects Example: In Git, you can commit locally even offline on a flight — with TFVC, you’d need… server ccess.

Explain a bit more

Git is now the default in Azure DevOps for flexibility and collaboration.

Real-world example (ShopNest)

Azure DevOps holds ShopNest repos, boards, and release pipelines in one place so build + deploy stay repeatable.

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.
Permalink & share

Azure DevOps Microsoft Azure Tutorial · DevOps

Short answer: What tasks are commonly used in .NET build pipelines? Answer: Common tasks: UseDotNet@2 → Installs .NET SDK. NuGetCommand@2 → Restores NuGet packages. DotNetCoreCLI@2 → Builds, tests, and publishes your app. PublishBuildArtifacts@1 → Stores your compiled output. Example: A .NET Core pipeline may use: task: DotNetCoreCLI@2 inputs: command: 'build'

Real-world example (ShopNest)

ShopNest’s YAML pipeline builds on every PR, runs unit tests, then deploys to a staging slot on main-branch merges.

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.
Permalink & share

Azure DevOps Microsoft Azure Tutorial · DevOps

Short answer: company using Jenkins moves to Azure DevOps to unify code and pipelines. They convert Jenkinsfile logic to YAML, using tasks like DotNetCoreCLI@2 and zureWebApp@1.

Real-world example (ShopNest)

ShopNest’s YAML pipeline builds on every PR, runs unit tests, then deploys to a staging slot on main-branch merges.

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.
Permalink & share

Azure DevOps Microsoft Azure Tutorial · DevOps

Short answer: .NET Core API gets built automatically when code is pushed to main. If tests pass, it’s deployed to staging — and after approval, to production.

Real-world example (ShopNest)

A “Add UPI payment” feature is a User Story with Tasks. Testers link bugs to the same work item for traceability.

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.
Permalink & share

Azure DevOps Microsoft Azure Tutorial · DevOps

Short answer: Zero-downtime means your API stays live while deploying new versions. Ways to achieve it: Use Azure App Service Deployment Slots (swap after warm-up).

Real-world example (ShopNest)

ShopNest’s YAML pipeline builds on every PR, runs unit tests, then deploys to a staging slot on main-branch merges.

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.
Permalink & share

Azure DevOps Microsoft Azure Tutorial · DevOps

Short answer: How do you restore NuGet packages in a build pipeline? Answer: Use either: script: dotnet restore or task: NuGetCommand@2 inputs: command: 'restore' This pulls dependencies from NuGet.org or an internal feed. Example: If your project uses private packages, you can add a NuGet service connection or Azure Artifacts feed to authenticate.

Real-world example (ShopNest)

ShopNest’s YAML pipeline builds on every PR, runs unit tests, then deploys to a staging slot on main-branch merges.

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.
Permalink & share

Azure DevOps Microsoft Azure Tutorial · DevOps

Short answer: How do you perform rollback in case of a failed deployment?

Explain a bit more

Answer: There are several ways: Use deployment slots — just swap back to the previous slot. Re-deploy a previous successful release in Azure DevOps. Use versioned artifacts — keep your last working package and redeploy it. Example: If your new API build breaks production, you can quickly redeploy the previous successful release version from Azure DevOps → Releases → “Redeploy”.

Real-world example (ShopNest)

Azure DevOps holds ShopNest repos, boards, and release pipelines in one place so build + deploy stay repeatable.

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.
Permalink & share

Azure DevOps Microsoft Azure Tutorial · DevOps

Short answer: How do you run unit tests and publish test results in a pipeline? Answer: You use the DotNetCoreCLI@2 task with test command and publish results. Example (YAML): task: DotNetCoreCLI@2 inputs: command: 'test' projects: '**/*Tests.csproj' publishTestResults: true Azure Pipelines will then display test results (passed, failed, duration) in the build summary.

Real-world example (ShopNest)

ShopNest’s YAML pipeline builds on every PR, runs unit tests, then deploys to a staging slot on main-branch merges.

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.
Permalink & share

Azure DevOps Microsoft Azure Tutorial · DevOps

Short answer: What are service connections in Azure DevOps? Answer: A service connection is a secure link between Azure DevOps and external systems (like Azure, AWS, GitHub, or Docker Hub). Example: If your pipeline needs to deploy code to Azure App Service, you create an Azure Resource Manager service connection. It stores credentials securely so the pipeline can deploy automatically.

Real-world example (ShopNest)

Azure DevOps holds ShopNest repos, boards, and release pipelines in one place so build + deploy stay repeatable.

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.
Permalink & share
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