CS 314 Topics List

The following are the major topics and sub topics covered in CS314, Data Structures (Computer Programming 2). Students should understand all the topics listed. Exams will be based on these topics, but exams will not simply ask for the definition of the concept.

Prerequisite knowledge:

Topics Covered in CS314:

  1. Course Introduction

  2. Complexity / Algorithm Analysis

  3. Encapsulation

  4. Inheritance

  5. Polymorphism

  6. Generics

  7. Interfaces

  8. Iterators

  9. Abstract Classes

  10. Maps, Sets

  11. Linked Lists

  12. Recursion

  13. Recursive Backtracking

  14. Searching, Simple Sorts

  15. Stacks

  16. Queues

  17. Fast Sorting

  18. Trees

  19. Binary Search Trees

  20. Red-Black Trees

  21. Heaps

  22. Hash tables

  23. Graphs

  24.  Dynamic Programming

  25.  Functional Programming in Java via streams.
  26. The Trie data structure. Implementation and uses.
  27. General skills