A Dive into Dynamic Programming Algorithms in Biology: Needleman-Wunsch and Smith-Waterman