Dr. Jaroslaw Zola
Department of Computer Science and Engineering
Department of Biomedical Informatics
This course is intended for students interested in learning efficient techniques for processing and analyzing large text collections, such as large-scale system logs, massive text corpora, medical records, or databases of DNA and protein sequences. The main focus is on fast algorithms and data structures for strings and sequences, including pattern matching, pairwise comparison, indexing and searching, as well as probabilistic methods, like fingerprinting and hashing. The theoretical component is complemented by practical considerations regarding efficient implementations of the discussed algorithms, and their applications in the real-world systems. The example applications include tools like UNIX grep, frameworks for plagiarism detection, as well as tools driving computational biology (e.g., BLAST, read mappers, DNA assemblers, etc.). The course has also a programming component, in which students implement (in their language of choice C/C++, Python or Java) small but fully functional text processing applications.
This course is the Software and Information Systems focus area course at CSE.
You can download full syllabus from here.
Course resources are available from here (password required).