Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Grokking the Coding Interview Patterns: Includes Topic Tutorials Plus LeetCode Questions & Solutions in JAVA ☕️ ... In addition, I've included Practice Questions Curated By LeetCode.

NotificationsYou must be signed in to change notification settings

AAdewunmi/Grokking-the-Coding-Interview-Patterns-for-Coding-Questions

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 

Repository files navigation

Grokking the Coding Interview Patterns: Includes Topic Tutorials Plus LeetCode Questions & Solutions in JAVA ☕️ ... In addition, I've included Practice Questions Curated By LeetCode.

1. Project Description:

This repository contains topic tutorials on "must know" coding interview patterns, their associated LeetCode questionsand solutions in Java programming language. It is based on "Grokking the Coding Interview: Patterns for Coding Questions"by Design Gurus.

Each section is structured as follows:

* Bitwise XOR    L Bitwise_XOR_Tutorial.txt (What is Bitwise XOR (exclusive OR)?)        L Problem_1_Single_Number.java (LeetCode Question: 136. Single Number)    L Problem_2_Two_Single_Numbers.java (LeetCode Question: 260. Single Number III)    L Problem_3_Complement_Of_Base_10_Number.java (LeetCode Question: 1009. Complement of Base 10 Integer)    L Problem_4_Flip_And_Invert_An_Image.java (LeetCode Question: 832. Flipping an Image)

2. Prerequisites:

Before solving Leetcode problems, make sure you are familiar with the following:

* Fundermentals of programming in Java Language* Collections in Java         L Interfaces: Set, List, Queue, Deque     L Classes: ArrayList, Vector, LinkedList, PriorityQueue, HashSet, LinkedHashSet, TreeSet, etc.* Data Structures and Algorithms in Java    L Data Structure: Stack, Queue, Graph, Tree, etc.    L Algorithms: Sorting, Searching, etc

3. Outline:

Coding Interview Patterns are classified according to skills level:

* Fundamental:

1. Two Pointers

2. Fast And Slow Pointers

3. Sliding Window

4. Merge Intervals

5. Cyclic Sort

6. LinkedList - In-Place Reversal

7. Stack

8. Island Pattern (Matrix Traversal)

9. Prefix Sum

* Intermediate:

1. Hash Map

2. Tree - Breadth First Search

3. Tree - Depth First Search

4. Graph

5. Heap

6. Modified Binary Search

7. Top K Elements

8. K Way Merge

9. Greedy Algorithm

10. Concurrency

* Advanced:

1. Monotonic Stack

2. Subsets

3. Bitwise XOR

4. Dynamic Programming

5. Backtracking

6. Trie

7. Topological Sort

8. Union Find (Disjoint-Set Data Structure)

9. Ordered Set

4. Coding Interview Preparation Roadmaps:

(a) AlgoMaster Roadmap:

Below is a visual representation of the three main pillars that make up Data Structures and Algorithms for Coding Interview's i.e. Data Structures, Algorithms, and Problem-Solving Techniques. It demonstrates the relationship between these three pillar's of Computer Science knowledge.

download

Reproduced from "How I Mastered Data Structures and Algorithms" By Ashish Pratap Singh

URL:https://blog.algomaster.io/p/15-leetcode-patterns


(b) Neetcode Roadmap:

Neetcode Roadmap: This is a structured approach to preparing for technical interviews, particularly for software engineering roles. It was created by NeetCode, a popular YouTube channel and website that offers a variety of resources for coding interview preparation. The roadmap is designed to help candidates tackle common interview topics in a systematic and comprehensive way.

Screenshot 2024-11-12 at 14 26 01

Reproduced from "Neetcode Roadmap"

URL:https://neetcode.io/roadmap

5. Leetcode Practice Questions (Curated By Leetcode):

Thought I'd include a list of practice questions under known headings.

  1. Two Pointers (215 Questions [Easy, Medium, Hard])

  2. Sliding Window (146 Questions [Easy, Medium, Hard])

  3. Prefix Sum (196 Questions [Easy, Medium, Hard])

  4. Hash Table (679 Questions [Easy, Medium, Hard])

  5. Counting (157 Questions [Easy, Medium, Hard])

  6. Linked List (79 Questions [Easy, Medium, Hard])

  7. Doubly-Linked List (11 Questions [Easy, Medium, Hard])

  8. Stack (167 Questions [Easy, Medium, Hard])

  9. Queue (47 Questions [Easy, Medium, Hard])

  10. Monotonic Stack (19 Questions [Easy, Medium, Hard])

  11. Monotonic Queue (48 Questions [Easy, Medium, Hard])

  12. Binary Tree (176 Questions [Easy, Medium, Hard])

  13. Binary Search Tree (40 Questions [Easy, Medium, Hard])

  14. Graph (159 Questions [Easy, Medium, Hard])

  15. Breadth-First Search (Tree & Graph) (240 Questions [Easy, Medium, Hard])

  16. Depth-First Search (Tree & Graph) (314 Questions [Easy, Medium, Hard])

  17. Heap (Priority Queue) (190 Questions [Easy, Medium, Hard])

  18. Greedy (406 Questions [Easy, Medium, Hard])

  19. Binary Search (302 Questions [Easy, Medium, Hard])

  20. Backtracking (107 Questions [Easy, Medium, Hard])

  21. Dynamic Programming (571 Questions [Easy, Medium, Hard])

  22. Trie (56 Questions [Easy, Medium, Hard])

  23. Bitmask (49 Questions [Easy, Medium, Hard])

  24. Bit Manipulation (233 Questions [Easy, Medium, Hard])

  25. Math (563 Questions [Easy, Medium, Hard])

The questions below are less likely to appear in a technical test, but they're still good to practice 💪
  1. Union Find (85 Questions [Easy, Medium, Hard])

  2. Topological Sort (11 Questions [Medium, Hard])

  3. Quickselect (7 Questions [Medium])

  4. Radix sort (3 Questions [Medium])

  5. Minimum spanning tree (Kruskal's) (5 Questions [Medium, Hard])

6. Installation:

i. Clone the git repo

https://github.com/AAdewunmi/Grokking-the-Coding-Interview-Patterns-for-Coding-Questions.git

ii. Open project folder

iii. Explore

😎

7. Resources:

I acknowledge the use of LeetCode for coding interview questions 👨‍💻, OpenAI's ChatGPT for topic explanation and solutions to coding questions 🤖.

8. Contributing:

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

9. Adapted from:

Project Name: "Grokking the Coding Interview: Patterns for Coding Questions"

Created by: Design Gurus (2024).

URL:https://www.designgurus.io/course-play/grokking-the-coding-interview/doc/63afd6338d316e91ad9fc027

Releases

No releases published

Packages

No packages published

Languages


[8]ページ先頭

©2009-2025 Movatter.jp