Skip to main content

CS106B - Programming Abstractions

Course Description

Abstraction and its relation to programming. Software engineering principles of data abstraction and modularity. Object-oriented programming, fundamental data structures (such as stacks, queues, sets) and data-directed design. Recursion and recursive data structures (linked lists, trees, graphs). Introduction to time and space complexity analysis. Uses the programming language C++ covering its basic facilities. Prerequisite: 106A or equivalent.

Career

Undergraduate

Grading Basis

ROP - Letter or Credit/No Credit

Min

3

Max

5

Course Repeatable for Degree Credit?

No

Course Component

Discussion

Enrollment Optional?

Yes

Course Component

Lecture

Enrollment Optional?

No