CS 5006 – Algorithms – Summer 2020
See https://northeastern.instructure.com/courses/10146 for course info.
CS 5007 – Systems – Summer 2020
TAs: @husky.neu.edu or @northeastern.edu
Abi Singh – singh.abi
Siyu Chen – chen.siyu2
Xin Wang – wang.xin9
Text book: “C Programming Language” Second Edition by Kernighan and Ritchie

Additional Reading: “THE DEVELOPMENT OF THE C PROGRAMMING LANGUAGE” by Dennis M. Ritchie
Text book: “Computer Systems: A Programmer’s Perspective” Third Edition, by Bryant and O’Hallaron

Additional Viewing: John Hennessy and David Patterson Turing Lecture (A New Golden Age for Computer Architecture): https://www.acm.org/hennessy-patterson-turing-lecture
Additional Viewing: Fran Allen Turing Lecture (Compiling for Performance: A Personal Tool)): https://amturing.acm.org/vp/allen_1012327.cfm
Additional Viewing: Leslie Lamport Turing Lecture (An Incomplete History of Concurrency): https://amturing.acm.org/vp/lamport_1205376.cfm
DATE | TOPIC | SLIDES |
Tuesday, 5 May 2020 | Module 1 – Hello World | slides |
Tuesday, 12 May 2020 | Module 2 – Memory | slides |
Tuesday, 19 May 2020 | Module 3 – Assembly Language | slides |
Tuesday, 26 May 2020 | Module 4 – Compilers | slides |
Tuesday, 2 June 2020 | Module 5 – Memory Hierarchy and Processes | slides |
Tuesdfay, 9 June 2020 | Module 6 – Concurrency and Threads | slides |
Tuesday, 16 June 2020 | Module 7 – Misc. Topics | slides |
Tuesday, 23 June 2020 | Final Exam Due (no class) |
CS 5007 – Systems – Spring 2020
Text book: “Computer Systems: A Programmer’s Perspective” Third Edition, by Bryant and O’Hallaron

Optional text book: “C Programming Language” Second Edition by Kernighan and Ritchie

Additional Reading: “THE DEVELOPMENT OF THE C PROGRAMMING LANGUAGE” by Dennis M. Ritchie
Additional Viewing: John Hennessy and David Patterson Turing Lecture: https://www.acm.org/hennessy-patterson-turing-lecture
See also Mike Shah’s lecture slides: http://www.mshah.io/comp/Summer19/5007/index.html
TAs: @husky.neu.edu or @northeastern.edu
Muhan Na – na.mu
Zach Rooney – rooney.z
Shreyas Shivshankar – shivashankar.s
DATE | TOPIC | SLIDES |
Tuesday, 25 February 2020 | Module 1 – Introduction to C, Overview of Systems | Module 1 |
Tuesday, 10 March 2020 | Module 2 – More C and memory | Module 2 |
Tuesday, 17 March 2020 | Module 3 – Intel Assembler | Module 3 |
Tuesday, 24 March 2020 | Module 4 – More C and Compilers/Linkers | Module 4 |
Tuesday, 31 March 2020 | Module 5 – More C and Memory Hierarchy | Module 5 |
Tuesdfay, 7 April 2020 | Module 6 – Concurrency (processes) | Module 6 |
Tuesday, 14 April 2020 | Module 7 – Concurrency (threads) | Module 7 |
Tuesday, 21 April 2020 | Final Exam |
Command Shell for Module 2 homework: shell0.c
Command Shell for Module 3 homework: shell1.c
Command Shell for Module 4 homework: shell2.c
Command Shell for Module 5 homework: shell3.c
Command Shell for Module 6 homework: shell4.c
Command Shell result of Module 6 homework: shell5.c
CS 5006 – Algorithms – Spring 2020
Text book: “grokking algorithms” by Aditya Bhargava

See also Mike Shah’s lecture slides: http://www.mshah.io/comp/Summer19/5006/index.html
TAs:
Gui Lan – lan.g@husky.neu.edu
Muhan Na – na.mu@husky.neu.edu
Zach Rooney – rooney.z@husky.neu.edu
Date | Topic | Slides |
---|---|---|
Tuesday, 7 January 2020 | Module 1 – Introduction to Algorithms, Efficiency, Searching and Sorting | Module 1 |
Tuesday, 14 January 2020 | Module 2 – Recursion, Merge Sort, Linked Lists, Trees | Module 2 |
Tuesday, 21 January 2020 | Module 3 – More Trees, Graphs | Module 3 |
Tuesday, 28 January 2020 | Module 4 – Greedy Algorithms, Heaps, Randomized Algorithms | Module 4 |
Tuesday, 4 February 2020 | Module 5 – Hashmaps, Dynamic Programming | Module 5 |
Tuesday, 11 February 2020 | Module 6 – Advanced Topics | Module 6 |
Tuesday, 18 February 2020 | Final Exam |
- Sample code for making a simple stack using arrays in C and Python: http://brent.hailpern.com/wp-content/uploads//2020/01/array.zip
- Sample code for making a simple stack using linked lists in C and Python (note that there are two C examples, one with the stack as a global variable and one with the stack passed as a parameter to push/pop): http://brent.hailpern.com/wp-content/uploads//2020/01/list.zip