CS61 系列是伯克利 CS 专业的入门课,其中 CS61B 是 61 系列的第二门可,注重算法与数据结构以及大规模程序的构建,学生会用 Java 语言结合算法与数据结构的知识来构建千行代码级别的大型项目。

其中 spring 2018 和 spring 2021 两个学期老师开放了 autograder,做完作业之后可以自主测评代码正确性。

sp21 的 proj2: gitlet 项目非常好,需要用相应的数据结构实现一个简化版本的 git 版本管理系统,总代码行数在 2000 行左右。

我写的 gitlet (以及前置的 lab6)可在 GitHub 仓库
UCBerkeley-CS61B-sp21-Proj2-Gitlet
中找到,拿到了全部分数(包括 status 命令的 extra credit),总分数见下图

在这里插入图片描述

以下是 csdiy 中对于 CS61B 课程的推荐:

伯克利 CS61 系列的第二门课程,注重数据结构与算法的设计,同时让学生有机会接触上千行的工程代码,通过 Java 初步领会软件工程的思想。
我上的是 2018 年春季学期的版本,该课的开课老师 Josh Hug 教授慷慨地将 autograder 开源了,大家可以通过网站公开的邀请码在 gradescope 免费加入课程,从而方便地测评自己的代码。
这门课所有的编程作业都是使用 Java 完成的。没有 Java 基础的同学也不用担心,课程会有保姆级的教程,从 IDEA(一款主流的 Java 编程环境)的配置讲起,把 Java 的核心语法与特性事无巨细地讲授,大家完全不用担心跟不上的问题。
这门课的作业质量也是绝绝子。14 个 lab 会让你自己实现课上所讲的绝大部分数据结构,10 个 Homework 会让你运用数据结构和算法解决实际问题, 另外还有 3 个 Project 更是让你有机会接触上千行的工程代码,在实战中磨练自己的 Java 能力。

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐