This project is started with the intent of learning algorithms and data-structures
as it provides base for
interview preparation
. Anyone is free to add additional data structures
and improvise the content. I hope anyone
out there who is preparing for the big tech companies
, this repository may provide a little help to them in the future.
Item | Online Coding Sites |
---|---|
|
Japanese Online Judge |
|
Hackerrank |
|
HackerEarth |
|
CodingNinjas |
|
LeetCode |
|
TopCoder |
|
InterviewBit |
|
Codeforces |
The references provided here are my opinion and they may or may not be the right option for you, and also i don't have any copyrights the below links provided.
- geeksforgeeks
- howtodoinjava
- Algorithms, 4th Edition
- Algorithm Wiki
- lavivienpost
- wikipedia
- sinon
- bigocheatsheet | time-complexity visualization.
- The Technical Interview Cheat Sheet.md
- www.cs.auckland.ac.nz
- algorithms.tutorialhorizon
- nptel
- ashish-chopra
- stonybrook
- techiedelight
- cslibrary.stanford.edu
- CP-AlgorithmsPage Authors
- phishman3579
- RodneyShag
- tech-interview-handbook by yangshun
- interview by Kevin Naughton Jr.
- Awesome Competitive Programming
- AlgorithmsBook
- JavaBook
- GitBook
- AlgorithmsBook
- Competitive Programmer’s Handbook
- The Hitchhiker’s Guide to the Programming Contests
- Cracking the Coding Interview
# | Algorithm |
---|---|
1 | Window Sliding Technique |
2 | Kaden's Algorithm. |
3 | Knuth–Morris–Pratt |
4 | Monte Carlo method |
5 | Markov chain |
6 | Bellman Ford Algorithm |
7 | dijkstra algorithm |
8 | Floyd-Warshall |
9 | Naive-Pattern-Searching |
10 | The JPEG compression |
11 | Run Length Encoding |
12 | LZW compression |
13 | Huffman Encoding |
14 | Manber Myers |
15 | Backtracking |
16 | greedy |
17 | Dynamic programming |
18 | Divide and Concur |
19 | Boyer-Moore search |
20 | Rabin-Karp |
21 | Manacher's |
22 | Flood-fill |
23 | Z Algorithm |
24 | Bellman–Ford |
25 | Dijkstra's |
26 | Ford–Fulkerson |
27 | Kruskal's |
28 | Nearest neighbour |
29 | Prim's algorithm |
30 | Depth-first search |
31 | Breadth-first search |
32 | Ford-Fulkerson |
33 | Fenwick Tree |
34 | Segment Tree |
35 | Prefix Tree |
36 | Suffix Tree |
37 | Master theorem |
38 | Jarvis-March |
# | Data Structures |
---|---|
1 | Array |
2 | Linked List |
3 | Stack |
4 | Queue |
5 | Tree |
6 | Trie |
7 | Graph |
8 | Hash-Table |
9 | String |
10 | Heap |
11 | B-tree and B+ tree |
# | Design Pattern |
---|---|
1 | UML |
2 | Creational Design Patterns |
3 | Factory Method |
4 | Abstract Factory Method |
5 | Singleton |
6 | Builder |
7 | Prototype |
8 | Structural Design Patterns |
9 | Adapter |
10 | Bridge |
11 | Composite |
12 | Decorator |
13 | Facade |
14 | Flyweight |
15 | Proxy |
16 | Structural Patterns Summary |
17 | Behavioral Design Patterns |
18 | Chain of Responsibility |
19 | Command |
20 | Interpreter |
21 | Iterator |
22 | Mediator |
23 | Memento |
24 | Observer |
25 | State |
26 | Strategy |
27 | Template Method |
28 | Visitor |
29 | MVC - Model View Controller |
30 | J2EE Patterns |
whatever i do everything seems to be so mathematical. so along with this project i want to improve my math ability. so i started working on the below math areas as well.
Item | Subject |
---|---|
|
Vedic Math |
|
Number Theory |
|
Algebra |
|
Trigonometry |
|
Calculus |
|
Graph Theory |
|
Game Theory |
|
Probability and Statistic's |
|
Geometry |
|
Combinatorics |
i know that these things can't be developed quickly, so i try to improve gradually, but at least i can scratch the basics for my next interview.
I thought of doing data structures
first then algorithm's
that are built on this data structures
, but sometimes
i may randomly do some other things depending on the mood.
I am currently not sure about it may be weekend days like (saturday's ,sunday's).
I had built this project using intellij
editor. Anyone having intellij
should be able to download and import the
project. Make sure that is java is installed and set correctly in your OS.
I followed the syntax from this markdown page. Check this link to structure your own readme pages.
online markdown editors are available click here to go to a online markdown editor.
CTRL + J
for list of available shortcuts.psvm
public static void main(String[] args) { }sout
System.out.println()
This project is licensed under the MIT License - see the LICENSE file for details.