Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/vijayksingh/ds-algo

A collection of everything i have done in DS
https://github.com/vijayksingh/ds-algo

algorithms coding-interviews data-structures interview interview-practice interview-preparation interview-questions leetcode leetcode-solutions linked-list

Last synced: about 2 months ago
JSON representation

A collection of everything i have done in DS

Awesome Lists containing this project

README

        


# Sufferings and Problem Solving

## 1. Table of Content

* 1. [Table of Content](#TableofContent)
* 2. [Data Structures Implementation](#DataStructuresImplementation)
* 2.1. [Common DS Implementation](#CommonDSImplementation)
* 2.2. [Common Algo Implementation](#CommonAlgoImplementation)
* 2.3. [Leetcode Explore](#LeetcodeExplore)
* 3. [Algo Monster](#AlgoMonster)
* 3.1. [Topics in Algo Monster](#TopicsinAlgoMonster)
* 3.1.1. [Practice from Algo Monster](#PracticefromAlgoMonster)
* 4. [Grokking the Coding Interview](#GrokkingtheCodingInterview)
* 4.1. [Patterns](#Patterns)
* 5. [Grokking Dynamic Programming Patterns](#GrokkingDynamicProgrammingPatterns)
* 5.1. [Patterns](#Patterns-1)
* 6. [System Design](#SystemDesign)
* 7. [Daily Logs](#DailyLogs)


**Refrences**:
- Guided Study
[Algo Monster](https://algo.monster/problems/stats)
[Grokking the Coding Interview](https://www.educative.io/courses/grokking-the-coding-interview)

- Extreme Practice in Adhoc Manner (Monthly Challenge)
[LeetCode Challenge](https://leetcode.com/)
- LeetCode Lists
- [Blind 75 must do](https://leetcode.com/list/#)
- [Amazon must do](https://leetcode.com/list?selectedList=xtwvgjdm)
- [Must do easy](https://leetcode.com/list?selectedList=xim6v1k2)
- [Must do medium](https://leetcode.com/list?selectedList=xi2eg5at)
- [Amazon Question - GeeksforGeeks](https://practice.geeksforgeeks.org/explore/?company%5B%5D=Amazon&problemType=functional&page=1&sortBy=submissions&company%5B%5D=Amazon)

- LeetCode Study Guide on Various DS
- [Leetcode Concepts Breakdown](https://leetcode.com/discuss/study-guide/1476329/Useful-posts-from-LeetCode-discussions-for-personal-use-and-concept-revision)
- Object Oriented Programming
- [Grokking Object Oriented Programming Interview](https://www.educative.io/courses/grokking-the-object-oriented-design-interview)
- [Udit Agarwal LLD Playlist](https://www.youtube.com/c/anomaly2104)

- Dynamic Programming and Trees + Graph (More Practice)
- [Grokking Dynamic Programming Problems](https://www.educative.io/courses/grokking-dynamic-programming-patterns-for-coding-interviews)

- Quick Glance for Practiced Questions
- [ALGO-DS Quick Cheat Sheet](https://github.com/sherxon/AlgoDS)

**Study Approach**
- Practice and Study consistently. No Streak breaks
- Create Flashcards daily.
- Spend 1-2 hour [synthesizing whatever](https://leetcode.com/discuss/career/449135/How-to-effectively-use-LeetCode-to-prepare-for-interviews) you learn.
- List down all the [aha moments](https://leetcode.com/discuss/interview-question/1367198/You-Only-Have-To-Be-Right-Once%3A-Facebook-Offer/1030106) in one file.
- Practice Java / Create Projects in JAVA
- Reserve time for writing notes and practicing flashcards

> NOT TODO LIST
- Block all the social media permanently.
- Don't get distracted by any other technology
- Don't start learning anything new
- No for CSS
- No for any new JS framework
- No for any tool
- No for Design

## 2. Data Structures Implementation

### 2.1. Common DS Implementation
- [x] Stack
- [x] Queue
- [ ] Linked List
- [ ] Doubly Linked List
- [ ] Hashmap
- [ ] Tree
- [ ] Tree Implementation
- [ ] Inorder
- [ ] Recursive
- [ ] Iterative
- [ ] Preorder
- [ ] Recursive
- [ ] Iterative
- [ ] PostOrder
- [ ] Recursive
- [ ] Iterative
- [ ] AVL Tree
- [ ] Trie
- [ ] Hased Array Tree
- [ ] LRU Cache
- [ ] Graph
- [ ] BFS
- [ ] DFS

### 2.2. Common Algo Implementation
- [ ] Sorting
- [ ] Binary
- [ ] Selection
- [ ] Insertion
- [ ] Quick
- [ ] Merge
- [ ] Counting
- [ ] Radix
- [ ] Bucket
- [ ] Heap
- [ ] Search
- [ ] Binary Search
- [ ] Lower Bound
- [ ] Upper Bound
- [ ] Binary Search on Ranges
- [ ] String
- [ ] Rabin Karp

### 2.3. Leetcode Explore

**Array**
- [x] [Duplicate Zeroes](https://leetcode.com/explore/learn/card/fun-with-arrays/525/inserting-items-into-an-array/3245/)
- [ ] [Merge Sorted Arrays](https://leetcode.com/explore/learn/card/fun-with-arrays/525/inserting-items-into-an-array/3253/)
- [x] [Valid Mountain Array](https://leetcode.com/explore/learn/card/fun-with-arrays/527/searching-for-items-in-an-array/3251/)
- [x] [Check if N and Its double Exist](https://leetcode.com/explore/learn/card/fun-with-arrays/527/searching-for-items-in-an-array/3250/)
- [x] [Remove Duplicate From Sorted Array](https://leetcode.com/explore/learn/card/fun-with-arrays/526/deleting-items-from-an-array/3248/)
- [x] [Array Deletions](https://leetcode.com/explore/learn/card/fun-with-arrays/526/deleting-items-from-an-array/3246/)
- [x] In Place Operations
- [x] [Replace Elements with Greatest Elements on Right Side](https://leetcode.com/explore/learn/card/fun-with-arrays/511/in-place-operations/3257/)
- [x] [Remove Duplicates from Sorted Array](https://leetcode.com/explore/learn/card/fun-with-arrays/511/in-place-operations/3258/)
- [x] [Move Zeroes](https://leetcode.com/explore/learn/card/fun-with-arrays/511/in-place-operations/3157/)
- [x] [Sort Array By Parity](https://leetcode.com/explore/learn/card/fun-with-arrays/511/in-place-operations/3260/)
- [x] [Remove Element](https://leetcode.com/explore/learn/card/fun-with-arrays/511/in-place-operations/3575/)
- [ ] Conclusion
- [x] [Height Checker](https://leetcode.com/explore/learn/card/fun-with-arrays/523/conclusion/3228/)
- [ ] [Third Maximum Number](https://leetcode.com/explore/learn/card/fun-with-arrays/523/conclusion/3231/)
- [ ] [Find all Numbers Disappeared in Array](https://leetcode.com/explore/learn/card/fun-with-arrays/523/conclusion/3270/)
- [ ] [Squares of Sorted Array](https://leetcode.com/explore/learn/card/fun-with-arrays/523/conclusion/3574/)

## 3. Algo Monster
### 3.1. Topics in Algo Monster
- [ ] Binary Search
- [ ] Depth First Search
- [ ] Backtracking
- [ ] Breadth First Search
- [ ] Graph
- [ ] Two pointers
- [ ] Priority Queue
- [ ] Dynamic Programming
- [ ] Divide and Conquer
- [ ] Advanced Data Structure
- [ ] Other

#### 3.1.1. Practice from Algo Monster
- [ ] Object Oriented Design
- [ ] Amazon Online Assessment
- [ ] Microsoft Online Assessment
- [ ] Google Online Assessment
- [ ] Twitter Online Assessment

## 4. Grokking the Coding Interview
### 4.1. Patterns
- [ ] Sliding Window
- [ ] Two Pointers
- [ ] Fast and Slow Pointers
- [ ] Merge Intervals
- [ ] Cyclic Sort
- [ ] In-place reversal of Linked List
- [ ] Tree: Breadth First Search
- [ ] Tree: Depth First Search
- [ ] Two Heaps
- [ ] Subsets
- [ ] Modified Binary Search
- [ ] Bitwise XOR
- [ ] Top K Element
- [ ] K-way merge
- [ ] 0-1 Knapsack
- [ ] Topological Sort
- [ ] Miscellaneous

## 5. Grokking Dynamic Programming Patterns
### 5.1. Patterns
- [ ] Knapsack
- [ ] Unbounded Knapsack
- [ ] Fibonacci Numbers
- [ ] Palindromic Subsequence
- [ ] Longest Common Substring

## 6. System Design
**Reference** :
[List of Questions asked on System Design](https://leetcode.com/discuss/interview-question/1140451/Helpful-list-of-LeetCode-Posts-on-System-Design-at-Facebook-Google-Amazon-Uber-Microsoft)

## 7. Daily Logs
| Day Count | Source | Problem | Level | Time | Notes | Solution | Category | R - 1 | R - 2 | R - 3 | R - 4 |
| --------- | ------ | ---------------------------------- | ----- | ---- | ----- | -------- | -------- | ----- | ----- | ----- | ----- |
| 1 | | Implement Stack | Easy | 20 m | | | | | | | |
| | | Implement Queue | Easy | 30 m | | | | | | | |
| | | Duplicate Zeros | Easy | 20 m | | | | | | | |
| 2 | | Valid Mountain Array | Easy | 30 m | | | | | | | |
| | | Check if N and Its double Exist | Easy | 30 m | | | | | | | |
| | | Remove Duplicate From Sorted Array | Easy | 30 m | | | | | | | |
| | | Array Deletions | Easy | 30 m | | | | | | | |
| | | Merge Sorted Arrays | | ❌ | | | | | | | |
| 3 | | | | | | | | | | | |