{"id":21569255,"url":"https://github.com/vijayksingh/ds-algo","last_synced_at":"2025-04-10T14:06:01.782Z","repository":{"id":46741281,"uuid":"407355693","full_name":"vijayksingh/DS-Algo","owner":"vijayksingh","description":"A collection of everything i have done in DS","archived":false,"fork":false,"pushed_at":"2021-09-28T01:21:41.000Z","size":48,"stargazers_count":34,"open_issues_count":8,"forks_count":11,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-24T12:47:47.141Z","etag":null,"topics":["algorithms","coding-interviews","data-structures","interview","interview-practice","interview-preparation","interview-questions","leetcode","leetcode-solutions","linked-list"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vijayksingh.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-09-17T00:41:14.000Z","updated_at":"2025-03-12T06:05:08.000Z","dependencies_parsed_at":"2022-09-24T08:01:36.075Z","dependency_job_id":null,"html_url":"https://github.com/vijayksingh/DS-Algo","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vijayksingh%2FDS-Algo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vijayksingh%2FDS-Algo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vijayksingh%2FDS-Algo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vijayksingh%2FDS-Algo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vijayksingh","download_url":"https://codeload.github.com/vijayksingh/DS-Algo/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248231841,"owners_count":21069412,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["algorithms","coding-interviews","data-structures","interview","interview-practice","interview-preparation","interview-questions","leetcode","leetcode-solutions","linked-list"],"created_at":"2024-11-24T11:07:38.416Z","updated_at":"2025-04-10T14:06:01.756Z","avatar_url":"https://github.com/vijayksingh.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"  \n# Sufferings and Problem Solving  \n  \n##  1. \u003ca name='TableofContent'\u003e\u003c/a\u003eTable of Content  \n\u003c!-- vscode-markdown-toc --\u003e\n* 1. [Table of Content](#TableofContent)\n* 2. [Data Structures Implementation](#DataStructuresImplementation)\n\t* 2.1. [Common DS Implementation](#CommonDSImplementation)\n\t* 2.2. [Common Algo Implementation](#CommonAlgoImplementation)\n\t* 2.3. [Leetcode Explore](#LeetcodeExplore)\n* 3. [Algo Monster](#AlgoMonster)\n\t* 3.1. [Topics in Algo Monster](#TopicsinAlgoMonster)\n\t\t* 3.1.1. [Practice from Algo Monster](#PracticefromAlgoMonster)\n* 4. [Grokking the Coding Interview](#GrokkingtheCodingInterview)\n\t* 4.1. [Patterns](#Patterns)\n* 5. [Grokking Dynamic Programming Patterns](#GrokkingDynamicProgrammingPatterns)\n\t* 5.1. [Patterns](#Patterns-1)\n* 6. [System Design](#SystemDesign)\n* 7. [Daily Logs](#DailyLogs)\n\n\u003c!-- vscode-markdown-toc-config\n\tnumbering=true\n\tautoSave=true\n\t/vscode-markdown-toc-config --\u003e\n\u003c!-- /vscode-markdown-toc --\u003e  \n**Refrences**:  \n- Guided Study    \n  [Algo Monster](https://algo.monster/problems/stats)  \n  [Grokking the Coding Interview](https://www.educative.io/courses/grokking-the-coding-interview)  \n  \n- Extreme Practice in Adhoc Manner (Monthly Challenge)    \n  [LeetCode Challenge](https://leetcode.com/)  \n- LeetCode Lists  \n  - [Blind 75 must do](https://leetcode.com/list/#)  \n  - [Amazon must do](https://leetcode.com/list?selectedList=xtwvgjdm)  \n  - [Must do easy](https://leetcode.com/list?selectedList=xim6v1k2)  \n  - [Must do medium](https://leetcode.com/list?selectedList=xi2eg5at)  \n  - [Amazon Question - GeeksforGeeks](https://practice.geeksforgeeks.org/explore/?company%5B%5D=Amazon\u0026problemType=functional\u0026page=1\u0026sortBy=submissions\u0026company%5B%5D=Amazon)\n \n- LeetCode Study Guide on Various DS\n\t- [Leetcode Concepts Breakdown](https://leetcode.com/discuss/study-guide/1476329/Useful-posts-from-LeetCode-discussions-for-personal-use-and-concept-revision)\n- Object Oriented Programming    \n\t- [Grokking Object Oriented Programming Interview](https://www.educative.io/courses/grokking-the-object-oriented-design-interview)  \n\t- [Udit Agarwal LLD Playlist](https://www.youtube.com/c/anomaly2104)  \n  \n- Dynamic Programming and Trees + Graph (More Practice)    \n\t- [Grokking Dynamic Programming Problems](https://www.educative.io/courses/grokking-dynamic-programming-patterns-for-coding-interviews)  \n\n- Quick Glance for Practiced Questions\n\t- [ALGO-DS Quick Cheat Sheet](https://github.com/sherxon/AlgoDS)\n  \n**Study Approach**  \n- Practice and Study consistently. No Streak breaks  \n- Create Flashcards daily.  \n  - Spend 1-2 hour [synthesizing whatever](https://leetcode.com/discuss/career/449135/How-to-effectively-use-LeetCode-to-prepare-for-interviews) you learn.  \n- 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.  \n- Practice Java / Create Projects in JAVA  \n- Reserve time for writing notes and practicing flashcards  \n  \n\u003e NOT TODO LIST  \n- Block all the social media permanently.  \n- Don't get distracted by any other technology  \n  - Don't start learning anything new  \n    - No for CSS  \n    - No for any new JS framework  \n    - No for any tool  \n    - No for Design  \n  \n##  2. \u003ca name='DataStructuresImplementation'\u003e\u003c/a\u003eData Structures Implementation  \n\n###  2.1. \u003ca name='CommonDSImplementation'\u003e\u003c/a\u003eCommon DS Implementation\n- [x] Stack  \n- [x] Queue  \n- [ ] Linked List  \n  - [ ] Doubly Linked List  \n- [ ] Hashmap  \n- [ ] Tree  \n  - [ ] Tree Implementation\n  - [ ] Inorder\n\t  - [ ] Recursive\n\t  - [ ] Iterative\n  - [ ] Preorder\n\t  - [ ] Recursive\n\t  - [ ] Iterative\n  - [ ] PostOrder\n\t  - [ ] Recursive\n\t  - [ ] Iterative  \n  - [ ] AVL Tree\n- [ ] Trie\n- [ ] Hased Array Tree\n- [ ] LRU Cache\n- [ ] Graph\n\t- [ ] BFS\n\t- [ ] DFS\n\n###  2.2. \u003ca name='CommonAlgoImplementation'\u003e\u003c/a\u003eCommon Algo Implementation\n- [ ] Sorting\n\t- [ ] Binary\n\t- [ ] Selection\n\t- [ ] Insertion\n\t- [ ] Quick\n\t- [ ] Merge\n\t- [ ] Counting\n\t- [ ] Radix\n\t- [ ] Bucket\n\t- [ ] Heap\n- [ ] Search\n\t- [ ] Binary Search\n\t- [ ] Lower Bound\n\t- [ ] Upper Bound\n\t- [ ] Binary Search on Ranges\n- [ ] String\n\t- [ ] Rabin Karp\n\n###  2.3. \u003ca name='LeetcodeExplore'\u003e\u003c/a\u003eLeetcode Explore\n\n**Array**\n- [x] [Duplicate Zeroes](https://leetcode.com/explore/learn/card/fun-with-arrays/525/inserting-items-into-an-array/3245/)\n- [ ] [Merge Sorted Arrays](https://leetcode.com/explore/learn/card/fun-with-arrays/525/inserting-items-into-an-array/3253/)\n- [x] [Valid Mountain Array](https://leetcode.com/explore/learn/card/fun-with-arrays/527/searching-for-items-in-an-array/3251/)\n- [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/)\n- [x] [Remove Duplicate From Sorted Array](https://leetcode.com/explore/learn/card/fun-with-arrays/526/deleting-items-from-an-array/3248/)\n- [x] [Array Deletions](https://leetcode.com/explore/learn/card/fun-with-arrays/526/deleting-items-from-an-array/3246/)\n- [x] In Place Operations\n\t- [x] [Replace Elements with Greatest Elements on Right Side](https://leetcode.com/explore/learn/card/fun-with-arrays/511/in-place-operations/3257/)\n\t- [x] [Remove Duplicates from Sorted Array](https://leetcode.com/explore/learn/card/fun-with-arrays/511/in-place-operations/3258/)\n\t- [x] [Move Zeroes](https://leetcode.com/explore/learn/card/fun-with-arrays/511/in-place-operations/3157/)\n\t- [x] [Sort Array By Parity](https://leetcode.com/explore/learn/card/fun-with-arrays/511/in-place-operations/3260/)\n\t- [x] [Remove Element](https://leetcode.com/explore/learn/card/fun-with-arrays/511/in-place-operations/3575/)\n- [ ] Conclusion\n\t- [x] [Height Checker](https://leetcode.com/explore/learn/card/fun-with-arrays/523/conclusion/3228/)\n\t- [ ] [Third Maximum Number](https://leetcode.com/explore/learn/card/fun-with-arrays/523/conclusion/3231/)\n\t- [ ] [Find all Numbers Disappeared in Array](https://leetcode.com/explore/learn/card/fun-with-arrays/523/conclusion/3270/)\n\t- [ ] [Squares of Sorted Array](https://leetcode.com/explore/learn/card/fun-with-arrays/523/conclusion/3574/)\n  \n##  3. \u003ca name='AlgoMonster'\u003e\u003c/a\u003eAlgo Monster  \n###  3.1. \u003ca name='TopicsinAlgoMonster'\u003e\u003c/a\u003eTopics in Algo Monster  \n- [ ] Binary Search  \n- [ ] Depth First Search  \n- [ ] Backtracking  \n- [ ] Breadth First Search  \n- [ ] Graph  \n- [ ] Two pointers  \n- [ ] Priority Queue  \n- [ ] Dynamic Programming  \n- [ ] Divide and Conquer  \n- [ ] Advanced Data Structure  \n- [ ] Other  \n  \n####  3.1.1. \u003ca name='PracticefromAlgoMonster'\u003e\u003c/a\u003ePractice from Algo Monster  \n- [ ] Object Oriented Design  \n- [ ] Amazon Online Assessment  \n- [ ] Microsoft Online Assessment  \n- [ ] Google Online Assessment  \n- [ ] Twitter Online Assessment  \n  \n##  4. \u003ca name='GrokkingtheCodingInterview'\u003e\u003c/a\u003eGrokking the Coding Interview  \n###  4.1. \u003ca name='Patterns'\u003e\u003c/a\u003ePatterns  \n- [ ] Sliding Window  \n- [ ] Two Pointers  \n- [ ] Fast and Slow Pointers  \n- [ ] Merge Intervals  \n- [ ] Cyclic Sort  \n- [ ] In-place reversal of Linked List  \n- [ ] Tree: Breadth First Search  \n- [ ] Tree: Depth First Search  \n- [ ] Two Heaps  \n- [ ] Subsets  \n- [ ] Modified Binary Search  \n- [ ] Bitwise XOR  \n- [ ] Top K Element  \n- [ ] K-way merge  \n- [ ] 0-1 Knapsack  \n- [ ] Topological Sort  \n- [ ] Miscellaneous  \n\n##  5. \u003ca name='GrokkingDynamicProgrammingPatterns'\u003e\u003c/a\u003eGrokking Dynamic Programming Patterns  \n###  5.1. \u003ca name='Patterns-1'\u003e\u003c/a\u003ePatterns  \n- [ ] Knapsack  \n- [ ] Unbounded Knapsack  \n- [ ] Fibonacci Numbers  \n- [ ] Palindromic Subsequence  \n- [ ] Longest Common Substring  \n  \n##  6. \u003ca name='SystemDesign'\u003e\u003c/a\u003eSystem Design  \n**Reference** :    \n[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)  \n  \n##  7. \u003ca name='DailyLogs'\u003e\u003c/a\u003eDaily Logs  \n| Day Count | Source | Problem                            | Level | Time | Notes | Solution | Category | R - 1 | R - 2 | R - 3 | R - 4 |\n| --------- | ------ | ---------------------------------- | ----- | ---- | ----- | -------- | -------- | ----- | ----- | ----- | ----- |\n| 1         |        | Implement Stack                    | Easy  | 20 m |       |          |          |       |       |       |       |\n|           |        | Implement Queue                    | Easy  | 30 m |       |          |          |       |       |       |       |\n|           |        | Duplicate Zeros                    | Easy  | 20 m |       |          |          |       |       |       |       |\n| 2         |        | Valid Mountain Array               | Easy  | 30 m |       |          |          |       |       |       |       |\n|           |        | Check if N and Its double Exist    | Easy  | 30 m |       |          |          |       |       |       |       |\n|           |        | Remove Duplicate From Sorted Array | Easy  | 30 m |       |          |          |       |       |       |       |\n|           |        | Array Deletions                    | Easy  | 30 m |       |          |          |       |       |       |       |\n|           |        | Merge Sorted Arrays                |       | ❌   |       |          |          |       |       |       |       |\n| 3          |        |                                    |       |      |       |          |          |       |       |       |       |\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvijayksingh%2Fds-algo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvijayksingh%2Fds-algo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvijayksingh%2Fds-algo/lists"}