This project contains many of my course projects as a CS bachelor from Tsinghua University.
Projects are categorized by the courses they belong to.
In progress
-
safety: The "Cyberspace Security" course.
- eke: Bellovin-Merritt Encrypted Key Exchange.
-
numal: The "Numerical Analysis" course.
- The folder contains 4 jupyter notebooks, each for one problem required by the course
-
os: The "Operating System" course.
- buddy: The buddy system implementation. The buddy system keeps track of a contiguous memory space and allocates blocks of different sizes dynamically.
-
misc: Miscellaneous projects.
-
SteepestDescent: Four Steepest Descent methods for optimization. It solves the problem of minimizing
$f(x)=\dfrac{1}{2}x^TQx+c^Tx$ . Then we plot to compare the convergence rate of four different algorithms: Steepest Descent, Accelerated Steepest Descent, Barzilai-Borwein method, and Line Search Steepest Descent. This was originally from Homework 9 of the "Mathematical Programming" course.
-
SteepestDescent: Four Steepest Descent methods for optimization. It solves the problem of minimizing