For Splines I found Christian Reinsch's classic paper to be a really good resource. You can find it various places on the web i.e here: https://tlakoba.w3.uvm.edu/AppliedUGMath/auxpaper_Reinsch_19...

The algorithm at the end is written in Algol but I found it pretty easy to understand.