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-
1510This 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
741752 . Clone the forked repository to local system.
751763 . Create your feature branch: ` git checkout -b my-new-feature `
761774 . Commit your changes: ` git commit -am 'Add some feature' ` .
77-
78178 Go through [ Commit Messages guidelines] ( CONTRIBUTING.md#write-good-commit-messages )
791795 . Push to the branch: ` git push origin my-new-feature `
801806 . 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] ( sauravjaiswal999@gmail.com ) , 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