Skip to content

Commit db376f9

Browse files
2 parents c09b88f + 6725477 commit db376f9

File tree

1 file changed

+132
-31
lines changed

1 file changed

+132
-31
lines changed

README.md

Lines changed: 132 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -7,42 +7,50 @@
77

88
## Interview Footsteps to crack your Dream Company
99

10-
![saurav]
11-
12-
This repository is a part of [ HacktoberFest -an event organised by DigitalOcean ](https://hacktoberfest.digitalocean.com/).
13-
You are requested to create your profile using the above link to be a part of it.
14-
1510
This repository contains examples of various algorithms written on different programming languages...
1611

17-
## Contributors
12+
# Interview resources
13+
Various algorithms written on different programming languages...
14+
1815

19-
[![](https://sourcerer.io/fame/xlogix/fnplus/Algorithms-Hacktoberfest/links/2)[![](https://sourcerer.io/fame/xlogix/fnplus/Algorithms-Hacktoberfest/image/3)]
2016
## Important Data Structures
2117

2218
| Data Structure | C | CPP | Java | Python |
2319
|:----------------------------------------------------------------------------------------------- |:-------------------------------------:|:-------------------------------------:|:-------------------------------------:|:-------------------------------------:|
24-
| [Queue](https://en.wikipedia.org/wiki/Queue_(abstract_data_type)) | | [:octocat:](queue/Cpp) | | |
25-
| [Stack](https://en.wikipedia.org/wiki/Stack_(abstract_data_type)) | | | [:octocat:](stack/Java) | [:octocat:](stack/Python) |
20+
| [Dynamic array](https://en.wikipedia.org/wiki/Dynamic_array) | | | | |
21+
| [Stack](https://en.wikipedia.org/wiki/Stack_(abstract_data_type)) | | | | |
22+
| [Singly Linked List](https://en.wikipedia.org/wiki/Linked_list) | | | | |
23+
| [Double Linked List](https://en.wikipedia.org/wiki/Doubly_linked_list) | | | | |
24+
| [Circular Linked List](https://en.wikipedia.org/wiki/Linked_list) | | | | |
25+
| [Hash Tables](https://en.wikipedia.org/wiki/Hash_table) | | | | |
26+
| [Heap](https://en.wikipedia.org/wiki/Heap_(data_structure)) | | | | |
27+
| [Fibonacci Heaps](https://en.wikipedia.org/wiki/Fibonacci_heap) | | | | |
28+
| [Disjoints Sets](https://en.wikipedia.org/wiki/Stack_(abstract_data_type)) | | | | |
29+
| [Adjacency matrix](https://en.wikipedia.org/wiki/List_of_data_structures#Hash-based_structures) | | | | |
30+
| [Queue](https://en.wikipedia.org/wiki/Queue_(abstract_data_type)) | | | | |
31+
| [Priority Queue](https://en.wikipedia.org/wiki/Priority_queue) | | | | |
2632

2733
## Important Algorithms
2834

2935
| Maths | C | CPP | Java | Python |
3036
|:----------------------------------------------------------------------------------------------- |:-------------------------------------:|:-------------------------------------:|:-------------------------------------:|:-------------------------------------:|
31-
| [Euclidean GCD](https://en.wikipedia.org/wiki/Euclidean_algorithm) | [:octocat:](euclidean_gcd/C) | [:octocat:](euclidean_gcd/C) | [:octocat:](euclidean_gcd/Java) | [:octocat:](euclidean_gcd/Python) |
32-
| [fibonacci series](https://en.wikipedia.org/wiki/Fibonacci_number) | [:octocat:](shell_sort/C) | | | [:octocat:](shell_sort/Python) |
37+
| [Euclidean GCD](https://en.wikipedia.org/wiki/Euclidean_algorithm) | | | | |
38+
| [Fibonacci series](https://en.wikipedia.org/wiki/Fibonacci_number) | | | | |
39+
| [Pallindrome number](https://en.wikipedia.org/wiki/Palindromic_number) | | | | |
40+
| [Perfect number](https://en.wikipedia.org/wiki/Perfect_number) | | | | |
3341

3442

3543
| Searching and Sorting | C | CPP | Java | Python |
3644
|:----------------------------------------------------------------------------------------------- |:-------------------------------------:|:-------------------------------------:|:-------------------------------------:|:-------------------------------------:|
37-
| [QuickSort](https://en.wikipedia.org/wiki/Quicksort) | | | | [:octocat:](quicksort/Python) |
38-
| [Merge Sort](https://en.wikipedia.org/wiki/Merge_sort) | | | | [:octocat:](merge_sort/Python) |
39-
| [Insertion Sort](https://en.wikipedia.org/wiki/Insertion_sort) | [:octocat:](insertion_sort/C) | [:octocat:](insertion_sort/Cpp) | | [:octocat:](insertion_sort/Python) |
40-
| [Counting Sort](https://en.wikipedia.org/wiki/Counting_sort) | | | | [:octocat:](counting_sort/Python) |
41-
| [Radix Sort](https://en.wikipedia.org/wiki/Radix_sort) | | | | [:octocat:](radix_sort/Python) |
42-
| [Bubble Sort](https://en.wikipedia.org/wiki/Bubble_sort) | [:octocat:](bubble_sort/C) | [:octocat:](bubble_sort/Cpp) | | |
43-
| [Heap Sort](https://en.wikipedia.org/wiki/Heapsort) | | | | [:octocat:](heap_sort/python) |
44-
| [Linear Search](https://en.wikipedia.org/wiki/Linear_search) | | [:octocat:](binary_search/Cpp) | | [:octocat:](binary_search/Python) |
45-
| [Binary Search](https://en.wikipedia.org/wiki/Binary_search_algorithm) | | [:octocat:](binary_search/Cpp) | | [:octocat:](binary_search/Python) |
45+
| [QuickSort](https://en.wikipedia.org/wiki/Quicksort) | | | | |
46+
| [Merge Sort](https://en.wikipedia.org/wiki/Merge_sort) | | | | |
47+
| [Insertion Sort](https://en.wikipedia.org/wiki/Insertion_sort) | | | | |
48+
| [Counting Sort](https://en.wikipedia.org/wiki/Counting_sort) | | | | |
49+
| [Radix Sort](https://en.wikipedia.org/wiki/Radix_sort) | | | | |
50+
| [Bubble Sort](https://en.wikipedia.org/wiki/Bubble_sort) | | | | |
51+
| [Heap Sort](https://en.wikipedia.org/wiki/Heapsort) | | | | |
52+
| [Linear Search](https://en.wikipedia.org/wiki/Linear_search) | | | | |
53+
| [Binary Search](https://en.wikipedia.org/wiki/Binary_search_algorithm) | | | | |
4654

4755
| Tree traversal | C | CPP | Java | Python |
4856
| --------------- | -----|------|------|---------------|
@@ -53,19 +61,112 @@ This repository contains examples of various algorithms written on different pro
5361
| [Height of the Tree]() | | | | | |
5462
| [Depth of the Tree]() | | | | |
5563
| [AVL Tree](https://en.wikipedia.org/wiki/AVL_tree) | | | | |
56-
| [Spanning Tree](https://en.wikipedia.org/wiki/Spanning_tree) | | | | |
64+
| [Spanning Tree](https://en.wikipedia.org/wiki/Spanning_tree) | | | | |
65+
| [Segment Tree](https://en.wikipedia.org/wiki/Segment_tree) | | | | |
66+
| [Fenwick Tree](https://en.wikipedia.org/wiki/Fenwick_tree) | | | | |
67+
| [Trie](https://en.wikipedia.org/wiki/Trie) | | | | |
5768

5869

5970
| Graph Traversal | C | CPP | Java | Python |
6071
| --------------- | -----|------|------|---------------|
6172
| [Breadth First Search](https://en.wikipedia.org/wiki/Breadth-first_search) | | | | |
6273
| [Depth First Search](https://en.wikipedia.org/wiki/Depth-first_search)| | | | |
63-
64-
65-
## Coding Practices / Learning Footsteps
66-
67-
### Maths
68-
* [Project Euler](https://projecteuler.net)
74+
| [Topological Sort](https://en.wikipedia.org/wiki/Topological_sorting)| | | | |
75+
| [Kruskals Algorithms](https://en.wikipedia.org/wiki/Kruskal%27s_algorithm)| | | | |
76+
| [Prim's Algorithms](https://en.wikipedia.org/wiki/Prim%27s_algorithm)| | | | |
77+
| [Belmon Ford Algorithms](https://en.wikipedia.org/wiki/Bellman%E2%80%93Ford_algorithm)| | | | |
78+
| [Floyd-Warshall Algorithm](https://en.wikipedia.org/wiki/Floyd%E2%80%93Warshall_algorithm)| | | | |
79+
| [Dijkstra's Algorithm](https://en.wikipedia.org/wiki/Dijkstra%27s_algorithm)| | | | |
80+
81+
## Curated resources
82+
83+
### Coding Practices
84+
* [Project Euler](https://projecteuler.net)
85+
* [LeetCode](https://leetcode.com/)
86+
* [InterviewBit](https://www.interviewbit.com/)
87+
* [Codility](https://codility.com/)
88+
* [HackerRank](https://www.hackerrank.com/)
89+
* [Project Euler](https://projecteuler.net/)
90+
* [Spoj](https://spoj.com/)
91+
* [Google Code Jam practice problems](https://code.google.com/codejam/contests.html)
92+
* [HackerEarth](https://www.hackerearth.com/)
93+
* [Top Coder](https://www.topcoder.com/)
94+
* [CodeChef](https://www.codechef.com/)
95+
* [Codewars](https://www.codewars.com/)
96+
* [CodeSignal](https://codesignal.com)
97+
* [CodeKata](http://codekata.com/)
98+
* [Firecode](https://www.firecode.io/)
99+
100+
### Video Lectures
101+
102+
* Data Structures
103+
* [UC Berkeley Data Structures](https://www.youtube.com/watch?v=mFPmKGIrQs4&index=1&list=PL-XXv-cvA_iAlnI-BQr9hjqADPBtujFJd)
104+
* [MIT Advanced Data Structures](https://www.youtube.com/watch?v=T0yzrZL1py0&list=PLUl4u3cNGP61hsJNdULdudlRL493b-XZf&index=1)
105+
* Algorithms
106+
* [MIT Introduction to Algorithms](https://www.youtube.com/watch?v=HtSuA80QTyo&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb&index=1)
107+
* [MIT Advanced Algorithms](https://www.youtube.com/playlist?list=PL6ogFv-ieghdoGKGg2Bik3Gl1glBTEu8c)
108+
109+
### Interview Books
110+
111+
* [Competitive Programming 3 - Steven Halim & Felix Halim](https://www.amazon.com/Competitive-Programming-3rd-Steven-Halim/dp/B00FG8MNN8)
112+
* [Cracking The Coding Interview - Gayle Laakmann McDowell](https://www.amazon.com/Cracking-Coding-Interview-Programming-Questions/dp/0984782850/ref=sr_1_1?s=books&ie=UTF8)
113+
* [Cracking The PM Interview - Gayle Laakmann McDowell & Jackie Bavaro](https://www.amazon.com/Cracking-PM-Interview-Product-Technology-ebook/dp/B00ISYMUR6/ref=sr_1_1?s=books&ie=UTF8)
114+
* [Introduction to Algorithms - Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest & Clifford Stein](https://www.amazon.com/Introduction-Algorithms-3rd-MIT-Press/dp/0262033844/ref=sr_1_1?ie=UTF8&qid=1490295989&sr=8-1&)
115+
116+
### Guides
117+
118+
* [GeeksForGeeks – A CS portal for geeks](http://www.geeksforgeeks.org/)
119+
* [Learneroo – Algorithms](https://www.learneroo.com/subjects/8)
120+
* [Top Coder tutorials](http://www.topcoder.com/tc?d1=tutorials&d2=alg_index&module=Static)
121+
* [Infoarena training path](http://www.infoarena.ro/training-path) (RO)
122+
* Steven & Felix Halim – [Increasing the Lower Bound of Programming Contests](https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=118) (UVA Online Judge)
123+
124+
### Courses
125+
126+
* MIT – [Hacking a Google Interview](https://courses.csail.mit.edu/iap/interview/materials.php)
127+
* [Coderust 2.0 ($$)](https://www.educative.io/collection/5642554087309312/5679846214598656?authorName=Coderust)
128+
* [Interview Cake ($$$)](https://www.interviewcake.com/) [[review](https://www.quora.com/How-helpful-was-the-paid-program-from-Interview-Cake-in-your-interview-preparation)]
129+
* [How to Ace the Software Engineering Interview ($$)](https://interviewsteps.com/products/how-to-ace-the-software-engineering-interview)
130+
* [Grokking the System Design Interview ($$)](https://www.educative.io/collection/5668639101419520/5649050225344512)
131+
132+
### Sites
133+
134+
* [Coding for Interviews](http://codingforinterviews.com/)
135+
* [Career Cup](https://www.careercup.com/)
136+
* [HiredInTech](https://www.hiredintech.com/)
137+
* [Codela](https://www.codela.net/)
138+
* [TestDome](https://www.testdome.com/)
139+
* [FreeCodeCamp](https://www.freecodecamp.com/) *"Learn to code and help nonprofits"*
140+
* [Dynamic Programming Practice Problems](https://people.cs.clemson.edu/~bcdean/dp_practice/)
141+
142+
### Videos
143+
144+
* [How to: Work at Google – Candidate Coaching Session for Technical Interviewing [45:45]](https://www.youtube.com/watch?v=oWbUtlUhwa8)
145+
* Gayle McDowell – [Cracking the Coding Interview [1:14:24]](https://www.youtube.com/watch?v=rEJzOhC5ZtQ)
146+
* Gayle McDowell - [Cracking the Coding Interview (examples) [9:05]](https://www.youtube.com/watch?v=aClxtDcdpsQ)
147+
* [Google Recruiters Share Technical Interview Tips [31:06]](https://www.youtube.com/watch?v=qc1owf2-220)
148+
* [Google Recruiters Share Non-Technical Interview Tips [28:23]](https://www.youtube.com/watch?v=DINxNbBOEoI)
149+
* Moishe Lettvin – [What I Learned Doing 250 Interviews at Google [1:00:24]](https://www.youtube.com/watch?v=r8RxkpUvxK0)
150+
* Sean Lee – [How to Get a Job at the Big 4 [42:34]](https://www.youtube.com/watch?v=YJZCUhxNCv8)
151+
* Ladies Storm Hackathons – [Interview Prep Round 1: Strings, Arrays, Linked Lists [1:12:39]](https://www.youtube.com/watch?v=fIpliB-ton8)
152+
* Randall Koutnik – [Rethinking the Developer Career Path [25:03]](https://www.youtube.com/watch?v=yIPbE7BssOs)
153+
154+
### System Design
155+
156+
* [donnemartin/system-design-primer](https://github.com/donnemartin/system-design-primer)
157+
* [Grokking the System Design Interview](https://www.educative.io/courses/grokking-the-system-design-interview)
158+
* This is a paid course but has several free previews such as [Designing Instagram](https://www.educative.io/courses/grokking-the-system-design-interview/m2yDVZnQ8lG)
159+
* [binhnguyennus/awesome-scalability](https://github.com/binhnguyennus/awesome-scalability)
160+
* Raph Levien – [Rope Science](https://github.com/google/xi-editor/blob/master/doc/rope_science/intro.md)
161+
* [Architecture of Open Source Applications](http://aosabook.org/en/index.html)
162+
* [How should I prepare system design questions for Google/Facebook interview?](http://www.quora.com/Job-Interviews/How-should-I-prepare-system-design-questions-for-Google-Facebook-Interview)
163+
* Jeff Atwood – [How Good an Estimator Are You?](http://blog.codinghorror.com/how-good-an-estimator-are-you/)
164+
* [0xAX/linux-insides](https://github.com/0xAX/linux-insides)
165+
166+
### Computer Science News
167+
168+
* [Hacker News](https://news.ycombinator.com/)
169+
* [Lobsters](https://lobste.rs/)
69170

70171

71172
## Contributing
@@ -74,15 +175,13 @@ This repository contains examples of various algorithms written on different pro
74175
2. Clone the forked repository to local system.
75176
3. Create your feature branch: `git checkout -b my-new-feature`
76177
4. Commit your changes: `git commit -am 'Add some feature'`.
77-
78178
Go through [Commit Messages guidelines](CONTRIBUTING.md#write-good-commit-messages)
79179
5. Push to the branch: `git push origin my-new-feature`
80180
6. Submit a pull request :smile:
81181

182+
See [Contributor.md](Contributor.md)
183+
ilename]</pre> |
82184

83-
## Support
84-
85-
Feel free to contact us at our [E-mail]([email protected]), we'd be happy to help!
86185

87186
## Notes
88187

@@ -91,3 +190,5 @@ Other members can add their reviews to a PR but the merging should be done by on
91190

92191
## Authors
93192
* [Saurav Jaiswal](http://sauravjaiswalsj.me)
193+
194+

0 commit comments

Comments
 (0)