COSC-2436 Programming Fundamentals III
Further applications of programming techniques, introducing the fundamental concepts of data structures and algorithms. Topics include data structures (including stacks, queues, linked lists, hash tables, trees, and graphs), searching, sorting, recursion, and algorithmic analysis. Programs will be implemented in an appropriate object oriented language. This course is included in the field of study curriculum for Computer Science. A grade of "C" or better is required to pass this course. Lec 3, Lab 2, Cr 4
Outcomes
- Design and develop programs that implement basic data structures, including stacks, queues, linked lists, hash tables, trees, and graphs.
- Apply recursive techniques and algorithms to solve problems.
- Implement searching and sorting algorithms.
- Understand algorithm efficiency, Big-O notation, and why it should be considered in programming.
- Analyze and select appropriate data structures to implement a solution to a problem.
- Design and implement data structures using classes and incorporating object-oriented concepts.
- Demonstrate best practices of software development including testing, validation, and documentation.