UCB Strongly Recommended Courses

“Strongly recommended courses” in this case means courses that are required for the major but may not be widely available at community colleges or other schools where transfer students may apply from. If you do not take them before transfer but are admitted, you will have to “catch up” after transfer, possibly delaying graduation.

https://eecs.berkeley.edu/resources/undergrads/eecs/degree-reqs-lowerdiv

Note that Math 54 or other math course containing linear algebra is not accepted in lieu of EE 16A, but a student may be allowed to take EE 47D instead of EE 16A if s/he has had linear algebra before (but EE 16A is recommended anyway).

If you wish to preview the UCB EE and CS courses or compare them with courses at your current school, you can do so here: https://inst.eecs.berkeley.edu/classes-eecs.html

As a practical matter, some notes about the other courses:

  • CS 61A: originally a Scheme-based course using *Structure and Interpretation of Computer Programs*, it is now a Python-based course covering similar concepts. If your have taken a CS course using SICP, it may have a better chance of being accepted for CS 61A than most introductory CS courses.
  • CS 61B: Data structures. See the course home pages to compare content with data structures course(s) at your current school.
  • CS 61C: Machine structures. See the course home pages to compare content with machine structures and/or computer organization course(s) at your current school.
  • CS 70: Discrete math and probability theory. You may be more likely to get credit if you have taken both a discrete math course and a probability theory course at your current school. See the course home pages for topics covered.