MA206 (Semester
I)

Lecturer:  Lectures: 
Dr
Graham Ellis 
1. Introduction
to DNA. (Lecture 1) 2. Longest Common Subsequences and a first algorithm. (Lecture 2 and BLAST software) 3. Local alignments and the SmithWaterman algorithm. (Lecture 3. See here also.) 4. Problem session. (Lecture 4) 5. Introduction to the Python programming language. (Lecture 5. See the Python tutorial also.) 6. Programming the LCS algorithm in Python. (Lecture 6 and the Python LCS program.) 7. Mathematical Digression: Increasing Subsequences and Young Tableaux. (Lecture 7) 8. Continued Digression: Robinson Knuth Schensted algorithm. (Lecture 8 and a Python KRS program) 9. Average length of a LCS between two sets of words. (Lecture 9) 10. Problem session. (Lecture 10) 11. Phylogenetic trees and ClustalW2 software for producing them. (Lecture 11) 12. Phylogenetic tree metrics. (Lecture 12) 13. Neighbourjoining algorithm. (Lecture 13) 14. Introduction to topology. (Lecture 14) 15. DNA sequencing by hybridization. (Lecture 15) 16. Problem Session The two homeworks are: 1) Implement the SmithWaterman algorithm for finding the score of an optimal local alignment. 2) Implement the nearest neighbour algorithm for constructing a phylogenetic tree. (Some python code that might be of use can be found here.) 17. Python tutorial 18. Python tutorial 19. Python tutorial 20. Python tutorial 21. Python tutorial 22. Python tutorial 