Coding Interview Preparation
5.85K subscribers
500 photos
2 videos
118 files
176 links
Coding interview preparation for software engineers

Interview questions, DSA, clean solutions.
Join πŸ‘‰ https://rebrand.ly/bigdatachannels

Buy ads: https://telega.io/c/coding_interview_preparation

DMCA: @disclosure_bds
Contact: @mldatascientist
Download Telegram
Preparing for Coding Interviews Training.pdf
371.4 KB
Preparing for a coding Interview

This is a comprehensive guide to prepare for a Coding Interview.
πŸ‘2❀1
AI Engineering Interview Questions covering LLMs, RAG, and Agents

These Repo contains interview questions and answers that are helpful for roles such as:

πŸ‘‰ AI Engineer
πŸ‘‰ Gen AI Engineer
πŸ‘‰ LLM Engineer
πŸ‘‰ Agentic AI Engineer
πŸ‘‰ AI Agent Engineer
πŸ‘‰ Forward Deployed Engineer
πŸ‘‰ AI Solutions Architect
πŸ‘‰ AI Platform Engineer
πŸ‘‰ Applied AI Engineer
πŸ‘‰ MLOps Engineer
πŸ‘‰ LLMOps Engineer

πŸ”— Link
πŸ”₯1
PHP Coding Interview Questions

Easy


1. Reverse a string without using a built-in reverse function.
2. Find the largest and smallest element in an array.
3. Check whether a string is a palindrome.
4. Check whether two strings are anagrams.
5. Remove duplicate elements from an array.
6. Count the frequency of each element in an array.
7. Find the intersection of two arrays.
8. Move all zeros in an array to the end while maintaining the order of the other elements.
9. Check whether a number is prime.
10. Find the factorial of a number using recursion.
11. Generate the Fibonacci sequence using both iteration and recursion.
12. Check whether a number is a palindrome.
13. Find the greatest common divisor of two numbers.
14. Implement linear search without using built-in search functions.
15. Sort an array using bubble sort.
16. Sort an array using insertion sort.
17. Sort an array using selection sort.

Medium

18. Find the second largest element in an array without sorting the array.
19. Find the first non-repeating character in a string.
20. Find the missing number in an array containing numbers from 1 to n.
21. Find all duplicate elements in an array.
22. Find the maximum sum of a contiguous subarray.
23. Merge two sorted arrays into one sorted array.
24. Find whether an array contains two numbers that add up to a given target.
25. Rotate an array to the right by k positions.
26. Find the longest substring without repeating characters.
27. Reverse an integer without converting it to a string.
28. Implement binary search on a sorted array.
29. Implement a stack using an array.
30. Implement a queue using an array.
31. Reverse a linked list.
32. Find the middle node of a linked list.
33. Merge two sorted linked lists.
34. Implement a function to check whether parentheses are balanced.

Hard

35. Detect whether a linked list contains a cycle.
36. Find the height of a binary tree.
37. Perform inorder, preorder, and postorder traversal of a binary tree.
38. Find the maximum depth of a binary tree.
39. Determine whether two binary trees are identical.
40. Find the lowest common ancestor of two nodes in a binary tree.
❀1
Top 20 Data Structure Interview Questions
β–ŽData Structures - Essential Guide

In this post, we will explore some fundamental data structures that are crucial for efficient programming. Understanding these data structures is essential for solving complex problems effectively.

1. Arrays:
β€’ Description: A collection of elements identified by index or key.
β€’ Time Complexity:
– Access: O(1)
– Search: O(n)
– Insertion/Deletion: O(n)
β€’ Use Cases: Storing a fixed-size sequential collection of elements.

2. Linked Lists:
β€’ Description: A linear collection of data elements, where each element points to the next, allowing for efficient insertion and deletion.
β€’ Types:
– Singly Linked List
– Doubly Linked List
– Circular Linked List
β€’ Time Complexity:
– Access: O(n)
– Search: O(n)
– Insertion/Deletion: O(1) (at the head)
β€’ Use Cases: Dynamic memory allocation, implementing stacks and queues.

3. Stacks:
β€’ Description: A collection of elements that follows the Last In First Out (LIFO) principle.
β€’ Operations:
– Push: Add an item to the top.
– Pop: Remove the item from the top.
– Peek: View the top item without removing it.
β€’ Time Complexity:
– All operations: O(1)
β€’ Use Cases: Function call management, expression parsing, backtracking algorithms.

4. Queues:
β€’ Description: A collection of elements that follows the First In First Out (FIFO) principle.
β€’ Operations:
– Enqueue: Add an item to the back.
– Dequeue: Remove an item from the front.
β€’ Time Complexity:
– All operations: O(1)
β€’ Use Cases: Scheduling tasks, breadth-first search in graphs.

5. Hash Tables:
β€’ Description: A data structure that implements an associative array, a structure that can map keys to values.
β€’ Time Complexity:
– Average case for Search, Insert, Delete: O(1)
– Worst case (when collisions occur): O(n)
β€’ Use Cases: Implementing dictionaries, caching data.

6. Trees:
β€’ Description: A hierarchical structure with nodes connected by edges. The top node is called the root, and each node may have child nodes.
β€’ Types:
– Binary Tree
– Binary Search Tree (BST)
– AVL Tree
– Red-Black Tree
β€’ Time Complexity:
– Search/Insert/Delete in a balanced BST: O(log n)
β€’ Use Cases: Representing hierarchical data, implementing search algorithms.

7. Graphs:
β€’ Description: A collection of nodes (vertices) connected by edges. Graphs can be directed or undirected.
β€’ Representation Methods:
– Adjacency Matrix
– Adjacency List
β€’ Time Complexity:
– Varies depending on the algorithm used (e.g., DFS, BFS).
β€’ Use Cases: Social networks, routing algorithms.
5 System Design Frameworks You Need for Your Next Interview
JavaScript Coding Interview Questions

Easy


1. Find the second smallest number in an array.
2. Reverse the order of words in a sentence.
3. Check whether a string starts and ends with the same character.
4. Find the average of numbers in an array.
5. Find all numbers that appear more than once in an array.
6. Replace every space in a string with a hyphen.
7. Find the longest common prefix among an array of strings.
8. Check whether an array is sorted in ascending order.
9. Find the index of the first occurrence of a given value without using indexOf().
10. Separate even and odd numbers into two arrays.
11. Find the difference between the largest and smallest values in an array.
12. Remove a specific element from an array without using filter().
13. Convert an array of numbers into an array of their squares.
14. Find the number of words in a sentence.
15. Swap two variables without using a temporary variable.


Medium

16. Implement a function that converts a nested object into a flat object.
17. Create a function that groups an array of objects by multiple properties.
18. Implement a function that removes duplicate objects from an array based on a property.
19. Write a function that compares two arrays regardless of their order.
20. Implement a custom version of Array.prototype.find().
21. Implement a custom version of Array.prototype.some().
22. Implement a custom version of Array.prototype.every().
23. Create a function that splits an array into chunks of a given size.
24. Implement a function that shuffles an array fairly.
25. Create a countdown timer using setInterval().
26. Implement a timeout wrapper for a Promise.
27. Write a function that caches the result of asynchronous operations.
28. Create a function that executes asynchronous tasks sequentially.
29. Implement a simple rate limiter for function calls.
30. Write a function that waits for multiple Promises but returns only the successful results.
31. Implement a custom deep-equality function for JavaScript objects.
32. Create a function that detects whether two strings are rotations of each other.
33. Implement a function that converts a JavaScript object into FormData.
34. Create a search function that filters and ranks objects based on a user's query.


Hard


35. Implement a simplified version of Promise.any().
36. Build a priority queue using JavaScript classes.
37. Implement a trie data structure for autocomplete.
38. Build a dependency resolver that determines the correct execution order of tasks.
39. Implement a simplified JavaScript module system with import and export behavior.
40. Build a worker pool that limits how many asynchronous tasks can run at the same time.
❀1
If you’re a fresher and you’re in 3rd/4th year but still don’t know coding, don’t start with LeetCode Hard.

Get these questions down first. A lot of service-based companies test these basic coding problems in fresher interviews:

1. Reverse a string without using a built-in reverse function
2. Check whether a string or number is a palindrome
3. Find the largest and smallest element in an array
4. Find duplicate elements in an array
5. Find the second-largest element without sorting
6. Check whether a number is prime
7. Print the first N Fibonacci numbers
8. Find factorial using recursion
9. Check whether two strings are anagrams
10. Count the frequency of each character in a string
11. Find the missing number from 1 to N
12. Find two numbers whose sum equals a target

You don’t need to know everything.

Try to solve these confidently first.
Most Asked Topics in SQL Interviews
5 DSA Patterns in Coding Interviews.pdf
689.7 KB
5 DSA Patterns in Coding Interviews
πŸ‘1
πŸ”₯ SQL Interview Case Studies (Advanced Business Scenarios)

🧠 Case Study 1: Find Repeat Customers
πŸ“Š Orders Table
order_id customer_id
1 101
2 102
3 101

❓ Business Question
Find customers who placed more than 1 order.

βœ… Solution
SELECT customer_id,
COUNT(*) AS total_orders
FROM orders
GROUP BY customer_id
HAVING COUNT(*) > 1;

🧠 Case Study 2: Highest Paid Employee Per Department
❓ Business Question
Find highest paid employee in every department.

βœ… Solution
WITH RankedEmployees AS (
SELECT *,
ROW_NUMBER() OVER(
PARTITION BY department
ORDER BY salary DESC
) rn
FROM employees
)
SELECT *
FROM RankedEmployees
WHERE rn = 1;

🧠 Case Study 3: Find Inactive Customers
❓ Business Question
Customers who haven't ordered in the last 6 months.

βœ… Solution
SELECT c.customer_id,
c.name
FROM customers c
LEFT JOIN orders o
ON c.customer_id = o.customer_id
GROUP BY c.customer_id, c.name
HAVING MAX(o.order_date) <
DATE_SUB(CURDATE(), INTERVAL 6 MONTH);

🧠 Case Study 4: Product Generating Highest Revenue
πŸ“Š Sales Table
product_id amount

βœ… Solution
SELECT product_id,
SUM(amount) AS revenue
FROM sales
GROUP BY product_id
ORDER BY revenue DESC
LIMIT 1;

🧠 Case Study 5: Employee Salary Above Department Average

βœ… Solution
WITH DeptAvg AS (
SELECT department,
AVG(salary) avg_salary
FROM employees
GROUP BY department
)

SELECT e.*
FROM employees e
JOIN DeptAvg d
ON e.department = d.department
WHERE e.salary > d.avg_salary;

🧠 Case Study 6: Running Total Sales
❓ Business Question
Calculate cumulative sales.

βœ… Solution
SELECT order_date,
amount,
SUM(amount) OVER(
ORDER BY order_date
) AS running_total
FROM sales;

🧠 Case Study 7: Top 3 Products Per Category

βœ… Solution
WITH RankedProducts AS (
SELECT *,
ROW_NUMBER() OVER(
PARTITION BY category
ORDER BY sales DESC
) rn
FROM products
)
SELECT *
FROM RankedProducts
WHERE rn <= 3;

🎯 Practice Tasks
1️⃣ Find customer with highest number of orders
2️⃣ Find lowest salary employee per department
3️⃣ Find products never sold
4️⃣ Find departments with average salary > company average
5️⃣ Find month with lowest sales

⚑️ Mini Challenge πŸ”₯
Banking Scenario
Tables:
Accounts
account_id customer_name

Transactions
transaction_id account_id amount transaction_date

Question
πŸ‘‰ Find the top 3 customers with highest total transaction amount in the last 1 year.

πŸ”₯ Interview Tip
When solving case studies:
1️⃣ Understand business question
2️⃣ Identify tables
3️⃣ Identify JOINs
4️⃣ Identify Aggregations
5️⃣ Decide whether Window Function is needed
JavaScript Interview Questions

These are some of the most important JavaScript interview questions every developer should know, from closures and hoisting to promises, async/await, CORS, debouncing, throttling, and more.