Algorithms
I think Algorithms and Mathematics are just like brothers. Each solution raises hundreds of problem. This subject can not be confined into one book. But the below mentioned books/links will help you to improve your problem solving skills.
1.a. Go through "Introduction to Algorithms" book by Cormen. Focus on Time/Space Complexity, Stack Linked List, Tree, Graph(BDS & DFS only) first. For bigger companies look at Greedy/DP chapters too.
1.a. Go through "Introduction to Algorithms" book by Cormen. Focus on Time/Space Complexity, Stack Linked List, Tree, Graph(BDS & DFS only) first. For bigger companies look at Greedy/DP chapters too.
1.b. DS and Algo improvement/practice links: You should try to solve the problem by yourself. Write the complete code on paper. Run the test cases on paper code. Just type the same code and see if it passes 100% TCs.
www.geeksforgeeks.org [Search by Company Name and Start Preparing One by One]
1.c. Practice Coding on https://www.hackerrank.com/ OR https://leetcode.com/ [Don't Subscribe initially, first try with the easy ones]
If you are a beginner filter with easy coding for Arrays, Stack, LinkedList, Tree. Once all are solved try to solve medium level questions. Also as said above, try to come up with your solution first, then look for solutions that are better and optimized.
1.d. Other Links
http://www.careercup.com/page?pid=amazon-interview-questions
www.doctorinterview.com
www.dsalgo.com
There are other links available also for these. Use any one of those. Please try to solve each problem by your own first. It might take 2-3 days to get a solution for a problem initially. After few days/weeks of practice it will be a matter of few minutes.
Java
www.doctorinterview.com
www.dsalgo.com
There are other links available also for these. Use any one of those. Please try to solve each problem by your own first. It might take 2-3 days to get a solution for a problem initially. After few days/weeks of practice it will be a matter of few minutes.
Java
To improve your java skills you need to practice a lot by writing codes, debugging each step sincerely. For understanding the basics you can follow this book.
2.a. Sun Certified Programmer for Java 6 Study Exam 310-065 Guide by Katherine Sierra, Bert Bates
System Design
I followed below Youtube Channel and It was pretty detailed.
- https://www.youtube.com/c/TechDummiesNarendraL/playlists
- Follow EducativeIO [First Go through the free ones to understand how to answer a System Design Question in a systematic manner]
Operating System
The below mentioned books will help you to understand/clear up basic concepts of OS. Also after reading and watching these books/video tutorials you will come to know how things are implemented internally in an OS.
3.a. Operating System by Gary Nutt
3.b. The design of Unix operating system by Maurice j Bach
3.c. Link: http://pages.cs.wisc.edu/~remzi/OSTEP/
3.d. Operating system videos in youtube.com by Prof P K Biswas, IIT KGP prof: http://www.youtube.com/watch?v=MaA0vFKt-ew
3.a. Operating System by Gary Nutt
3.b. The design of Unix operating system by Maurice j Bach
3.c. Link: http://pages.cs.wisc.edu/~remzi/OSTEP/
3.d. Operating system videos in youtube.com by Prof P K Biswas, IIT KGP prof: http://www.youtube.com/watch?v=MaA0vFKt-ew
Networking
If you understand the basics of TCP/IP and detailed functionality of each layer you are 50% done with networking. The book mentioned in the 4.a. (see below) is very helpful to grasp TCP/IP knowledge.
4.a Computer Networking: A Top-Down Approach by James F. Kurose, Keith W. Ross
4.a Computer Networking: A Top-Down Approach by James F. Kurose, Keith W. Ross
No comments:
Post a Comment