人的新鲜感总是难以为继,我们总是会不经意间开始厌倦已经熟悉的人和事
<iframe src=”https://www.youtube.com/v/Nz1KZXbg
课程安排
LEC # | TOPICS | KEY DATES |
---|---|---|
Unit 1: Introduction | ||
1 | Algorithmic thinking, peak finding | Problem set 1 out |
2 | Models of computation, Python cost model, document distance | |
Unit 2: Sorting and Trees | ||
3 | Insertion sort, merge sort | |
4 | Heaps and heap sort | |
5 | Binary search trees, BST sort | |
6 | AVL trees, AVL sort | |
7 | Counting sort, radix sort, lower bounds for sorting and searching | |
Unit 3: Hashing | ||
8 | Hashing with chaining | |
9 | Table doubling, Karp-Rabin | |
10 | Open addressing, cryptographic hashing |
课程阅读
课程视频
由于本课程视频较为模糊,因此我们以其他的视频进行替代
课程 | 内容 | 完成情况 |
---|---|---|
第一讲 | lecture-1-algorithmic-thinking-peak-finding | 完成 |
第二讲 | ||
第三讲 | ||
第四讲 | ||
第五讲 | ||
第六讲 | ||
第七讲 | ||
第八讲 | Hashing with Chaining | |
作业
作业 | 内容 | 完成情况 |
---|---|---|
boot xv6 (mit.edu) | Boot xv6 | 完成 |
Finding and breaking at an address | 完成 | |
Exercise: What is on the stack? | ||
shell (mit.edu) | 完成:6.033: Hands-on Assignment (UNIX) (mit.edu) | |
阅读:chapter 0 of the xv6 book | 完成 | |
阅读:6.828 shell | 完成 | |
完成:实验环境搭建 | 完成 | |
完成:执行简单命令 | 完成 | |
完成:IO重定向 | 完成 | |
完成:实施管道 | 完成 | |
完成:挑战练习 | ||
xv6 system calls (mit.edu) | 完成:syscall函数 | 完成 |
完成:date函数 | 完成 | |
lazy page allocation | 完成:修改sbrk函数 | 完成 |
完成:lazy allocation | 框架搭好了,但尚未实现 | |
Threads and Locking | 完成:对put进行加锁保护 | 完成,但是Hash表原理不太懂 |
实 验
实验 | 内容 | 完成情况 |
---|---|---|
Lab1 | 完成 | |
Lab2 | 阅读:Introduction | 完成 |
完成:实验环境搭建 | 完成 | |
阅读:第一部分,物理页管理 | 完成 | |
阅读:第二部分,虚拟内存 | 完成 | |
阅读:第三部分,内核地址空间 | 完成 | |
编程:编写一个物理内存分配 boot_alloc | 完成 | |
第一部分:编写mem_init() | 完成 | |
第一部分:编写page_init | 完成 | |
第一部分:编写page_alloc和page_free | 完成 | |
第二部分:编写pgdir_walk | 完成 | |
第二部分: | ||