Use all the available resources. Writes lots of very simple programs to verify and deepen your understanding of the various concepts. Doing only the homeworks assignments is not sufficient. If you can't use a concept, you don't know it. Explain the concept to friend.
Teaching often reveals holes in understanding.
Everytime you make an error, it is an oppportunity to learn. Enjoy the process of learning. Implementations will be done in Java. Learn the elements of analysis of algorithms, including O notation. as well as basic elements of object-oriented design and implementation. Grading There will be approximately 4 quizzes and 8 programming assignments.