Take control of your source code and data with Git.
Supercharge your development of Java programs.
Begin the process of implementing a real-world Java program.
Finish the implementation and testing of a complete system.
Conduct and report on your own performance evaluation experiments.
Learn more about the correctness and efficiency of sorting methods.
Experimentally determine the worst-case time complexity of an algorithm.
Investigate the use of the stack abstract data type.
Implement a program that uses the queue abstract data type.
Implement and use your own benchmarking framework for Java Collections.
Design, implement, test, release, evaluate, and present a complete software system.