Algorithms for Characterizing Peptides and Glycopeptides with Mass Spectrometry