everything.study
COMP SCI 400

PROGRAMMING III

3 credits.

The third course in our programming fundamentals sequence. Covers balanced search trees, graphs, graph traversal algorithms, hash tables and sets, and complexity analysis and about classes of problems that require each data type. Involves design and implementation using high quality professional code, a medium sized program, that demonstrates knowledge and use of latest language features, tools, and conventions. Additional topics may include inheritance and polymorphism; anonymous inner classes, lambda functions, performance analysis to discover and optimize critical code blocks. Introduces industry standards for writing high-quality, maintainable code.

Prerequisites & course information

Requisites: COMP SCI 300 , graduate/professional standing, or declared in the Capstone Certificate in Computer Sciences for Professionals Course Designation: Core GenEd - Natural Science & Wellness + Lab Breadth - Natural Science Level - Intermediate L&S Credit - L&S Liberal Arts and Science Repeatable for Credit: No Last Taught: Fall 2026 Learning Outcomes: 1. Select and use standard development tools, including shells, source control and build systems. Audience: Undergraduate 2. Develop a program including making and describing high and low-level design decisions. Audience: Undergraduate 3. Apply, implement, and analyze sorting, tree and graph algorithms. Audience: Undergraduate 4. Select and apply common indexing data structures to represent sets and maps. Audience: Undergraduate 5. Design and categorize different types of tests and pick types based on the testing scenario. Audience: Undergraduate 6. Identify and solve problems by applying standard methods including graph algorithms, balanced trees, and sorting. Audience: Undergraduate 7. Read, analyze and review programs to summarize and evaluate their functionality, performance and maintainability. Audience: Undergraduate Learning Outcomes: 1. Select and use standard development tools, including shells, source control and build systems. Audience: Undergraduate 2. Develop a program including making and describing high and low-level design decisions. Audience: Undergraduate 3. Apply, implement, and analyze sorting, tree and graph algorithms. Audience: Undergraduate 4. Select and apply common indexing data structures to represent sets and maps. Audience: Undergraduate 5. Design and categorize different types of tests and pick types based on the testing scenario. Audience: Undergraduate 6. Identify and solve problems by applying standard methods including graph algorithms, balanced trees, and sorting. Audience: Undergraduate 7. Read, analyze and review programs to summarize and evaluate their functionality, performance and maintainability. Audience: Undergraduate

Sources