代码拉取

https://github.com/xuzheng465/Stanford_CS110
找到assign1文件夹就是第一个assign啦

路径修改(复制)

官方给了正确答案,但给的是可执行文件在文件夹slink里,由于给的是可执行文件想要运行官方的答案就要把actordatamoviedata两个文件复制到他所要求的路径.在imdb-utils.h头文件中可以找到该路径:
const std::string kIMDBDataDirectory("/usr/class/cs110/samples/assign1/");

测试

测试应该有三个文件SANITY.ini,sanity.pysanity.pyc.所有的测试用例都在SANITY.ini中,后面两个估计是测试的python脚本,没琢磨出来怎么用(sanity.pyc会报错).故选择最原始的方式通过一个个样例进行比对.对于第二个bfs有些用例有时间要求可以使用如下代码来进行时间测试:

#include <iostream>
#include <chrono>

int main() {
    // 开始计时
    std::chrono::steady_clock::time_point start = std::chrono::steady_clock::now();

    // 你写的bfs

    // 结束计时
    std::chrono::steady_clock::time_point end = std::chrono::steady_clock::now();
    // 计算执行时间(毫秒为单位)
    std::chrono::milliseconds duration =
    std::chrono::duration_cast<std::chrono::milliseconds>(end - start);
    // 输出执行时间
    std::cout << "times: " << duration.count() << " ms" << std::endl;

    return 0;
}

文档查阅

代码这里就不给出了(就是一些低质量代码),给出一些我在做实验过程中查阅的一些文档和工具: