These are the lecture notes I (Mingfu Shao) used when teaching the undergrad-course "Data Structures and Algorithms" (CMPSC 465) at Penn State. The main purpose of writing these notes is to provide students with a one-stop, complete set of materials for them to review after class. Students found them very helpful which motivated me to release them; hopefully more can find them useful.
When writing them I was trying to provide (a), both intuitive explanations and rigorous proofs, (b), pseudo-code for each algorithm, and (c), as many examples and illustrative figures as possible.
To compile into a pdf file, run twice of pdflatex main.tex
.
Pre-complied versions are available at releases.
The notes are distributed under CC-BY-NC license.
I will continue to improve them. If you identify any typos/errors or have comments/suggestions on how to make them better, please post an "Issue" in this GitHub repo or let me know via email mxs2589 AT psu DOT edu. Thank you.