In the second of the three-part series of lectures, I will present algorithms for sequence analysis. I will start with a brief description of sequence alignment, multiple alignment, and motif-finding algorithms. I will devote much of the talk to the problem of genome assembly, in particular, algorithms for mapping and de-novo assembly of Next Generation Sequencing reads. I will address problems of error-detection and correction, following by the sequencing techniques. I will conclude with a summary of the state-of-the-art in sequencing software, SNP databases, and their use.