Foreword
Disclaimer: This translated content is generated by a large language model.
These are the first batch of articles on the blog, and my plan is to share some of my experiences self-studying online computer courses. My initial plan is to introduce the specifics and learning experiences of several courses, as well as share the tools and resources used during self-study. Special thanks to CS Self-Study Guide and many selfless sharers.
Course Introduction
UCB's CS61B is a classic data structures course. As the second course in the University of California, Berkeley's Computer Science 61 series, it uses Java to introduce common data structures and algorithms. CS61BL is the summer version of this course, with a faster pace and a greater emphasis on labs and coding. Below are some course resources and my implementation.
- Course Website, all public resources are placed here, serving as the main source of materials for self-studying this course.
- Course Recordings, the course recordings for this class; however, there isn't much difference between different versions, so the older 2021 version is also fine.
- Online Textbook, I did not browse this part line by line during my study; I only referred to this textbook occasionally when I couldn't complete a lab, to enhance my understanding.
- Gradescope online code evaluation website code: KDR8BZ . Usage: Register an account and use this code to add the course. When self-studying the course, pay attention to its auditing policy.
- My code implementation is hosted on GitHub, developed in containers using Devcontainer, supporting VSCode and IntelliJ IDEA. Lab 18 and Project 3 were not implemented due to time and interest constraints.
Summary of Learning Content
When I was self-studying, this course was ongoing, and generally, there was one lab every day or two, involving very high-intensity coding practice. Projects like LinkedList required a certain level of Java debugging skills, and a large number of labs also required writing unit tests.
This course covers Java fundamentals, basic software engineering principles, and various common data structures and algorithms, making it a very classic introductory course to data structures and algorithms.
Learning Recommendations
Compared to the CS61B version, this course places a greater emphasis on labs, thus providing good practice for coding skills. Additionally, the older 2021 version of CS61B is somewhat outdated, and many libraries and testing frameworks need to be configured by oneself.
评论系统尚未配置。请在 .env 中填写 giscus 所需的环境变量。