This course will examine data structures and how they assist us in solving complex problems. Topics include: abstract data types (abstraction, encapsulation, information hiding), data structures (arrays, lists, stacks, queues, trees, heaps, sets, and hash tables), searching and sorting algorithms, correctness and efficiency, and object-oriented programming. All implementations will use the Java programming language.
View course outline