Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

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

patterns for coding interviews
https://github.com/sumanbiswas7/ds-algo

algorithms data-structures python

Last synced: about 2 months ago
JSON representation

patterns for coding interviews

Awesome Lists containing this project

README

        

# Algorithms Interview

understand coding problem patterns to build a good base on solving problems. all answers are in python but if you get the idea you can implement these in any language and clinch your tech interview :)

> **Note** : You are not expected to understand all of these problems just by reading the given explanation. You could use these as a hint or you could use these as revision material.

## Patterns and Solutions

[`Hashing`](01-hashing/HASHING.md) [`Sliding Window`](02-sliding-window/SLIDING_WINDOW.md) [`Two Pointers`](03-two-pointers/TWO_POINTERS.md) [`Fast slow pointers`](04-fast_slow-pointers/FAST_SLOW_POINTERS.md) [`Merge intervals`](05-merge-intervals/MERGE_INTERVALS.md) [`Cyclic sort`](06-cyclic-sort/CYCLIC_SORT.md)

[`Inplace reversal of a linkedlist`](07-inplace-reversal-linkedlist/INPLACE_REVERSAL_LINKEDLIST.md)
[`Subsets`](08-subsets/SUBSETS.md)

## Table of contents

#### Hashing

- [Contains Duplicate](01-hashing/HASHING.md)
- [Two Sum](01-hashing/HASHING.md)
- [Valid Anagram](01-hashing/HASHING.md)
- [Group Anagrams](01-hashing/HASHING.md)
- [Top k frequent elements](01-hashing/HASHING.md)
- [Product of array expect self](01-hashing/HASHING.md)
- [Valid soduku](01-hashing/HASHING.md)

#### Sliding window

- [Maximum Sum Subarray of Size K ](02-sliding-window/SLIDING_WINDOW.md)
- [Smallest array with given sum](02-sliding-window/SLIDING_WINDOW.md)
- [Longest substring with k character](02-sliding-window/SLIDING_WINDOW.md)
- [Fruits into busket](02-sliding-window/SLIDING_WINDOW.md#fruits-into-basket)
- [Longest substr without repeating char](02-sliding-window/SLIDING_WINDOW.md)
- [Longest substr with same letters after replacement](02-sliding-window/SLIDING_WINDOW.md)
- [Longest subarray with ones after replacement](02-sliding-window/SLIDING_WINDOW.md)

#### Two pointers

- [Two sum sorted](03-two-pointers/TWO_POINTERS.md)
- [Remove duplicates from sorted array](03-two-pointers/TWO_POINTERS.md)
- [Squaring a Sorted Array](03-two-pointers/TWO_POINTERS.md)
- [Three sum](03-two-pointers/TWO_POINTERS.md)
- [Three sum closest](03-two-pointers/TWO_POINTERS.md)
- [Three sum smaller](03-two-pointers/TWO_POINTERS.md)
- [Dutch national flag problem](03-two-pointers/TWO_POINTERS.md)

#### Fast and slow pointer

- [Linked list cycle](04-fast_slow-pointers/FAST_SLOW_POINTERS.md)
- [Linked list cycle II](04-fast_slow-pointers/FAST_SLOW_POINTERS.md)
- [Middle of the linked list](04-fast_slow-pointers/FAST_SLOW_POINTERS.md)
- [Happy number](04-fast_slow-pointers/FAST_SLOW_POINTERS.md)

#### Merge intervals

- [Merge intervals](05-merge-intervals/MERGE_INTERVALS.md)
- [Insert intervals](05-merge-intervals/MERGE_INTERVALS.md)
- [Intervals intersection](05-merge-intervals/MERGE_INTERVALS.md)
- [Conflicting appointments](05-merge-intervals/MERGE_INTERVALS.md)

#### Cyclic sort

- [Cyclic sort](06-cyclic-sort/CYCLIC_SORT.md)
- [Find the missing number](06-cyclic-sort/CYCLIC_SORT.md)
- [Find all missing number](06-cyclic-sort/CYCLIC_SORT.md)
- [Find the duplicate number](06-cyclic-sort/CYCLIC_SORT.md)
- [Find all duplicate number](06-cyclic-sort/CYCLIC_SORT.md)

#### Inplace reversal of a linkedlist

- [Reverse a linkedlist](07-inplace-reversal-linkedlist/INPLACE_REVERSAL_LINKEDLIST.md)
- [Reverse a sublist](07-inplace-reversal-linkedlist/INPLACE_REVERSAL_LINKEDLIST.md)
- [Reverse every K-element Sub-list](07-inplace-reversal-linkedlist/INPLACE_REVERSAL_LINKEDLIST.md)

#### Subsets

- [Subsets](08-subsets/SUBSETS.md)
- [Subsets with duplicates](08-subsets/SUBSETS.md)