Stanford University Wiki

CS 106B

229pages on
this wiki
Add New Page
Talk0 Share

Programming Abstractions (CS 106B) is a 5-unit computer science course, the second in the CS 106 introductory series.

Topics CoveredEdit

Students program in C++ and are introduced to complex data structures, classes and templates, recursion, and algorithm analysis among other topics. The class is more difficult than CS 106A, as it deals with more abstract and in-depth topics.

Programs written in a typical quarter may include Random Writer, Word Ladder, the Recursion problem set, Boggle, Sorting Lab, Priority Queue, and Huffman Encoding.


From the course website: This course is the successor to CS 106A and covers more advanced programming topics such as recursion, algorithmic analysis, and data abstraction. This course is taught using the C++ programming language, which is similar to both C and Java. In the past when both CS 106A and CS106B were taught in C/C++, the coupling between the two classes was very tight and it was unheard for students to take CS106B without having completed our CS 106A (we recommended CS 106X instead). Nowadays, some students do go straight into CS106B, this is typically appropriate for a student who done well in an intro programming course (e.g scored 4 or 5 on the CS AP exam or earned a good grade in a college course) and has sufficient familiarity with good programming style and software engineering issues (at the level of CS 106A) to use this understanding as a foundation on which to tackle advanced topics.


The class is often taught by Professor Julie Zelenski.

External LinksEdit

Ad blocker interference detected!

Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.

Also on Fandom

Random Wiki