1 Introduction

This project consists of the following goals:

 

2 Ukkonen's Algorithm

Ukkonen's algorithm  must be fully implemented.  That includes the following:


Once Ukkonen's algorithm is implemented it is proposed an experiment to check the linearity of the algorithm. The experiment have to be carried out according to the following directions.

The last part of the project is to use the generated suffix trees to solve the exact string matching problems. The test data will be the files Pattern1.txt, Pattern3.txt to be searched in files Text1.txt and Text3.txt. Files can be found HERE.  All alphabets are binary.

Solve the SMC problem and after that answer the following questions:

 

3 Programming

Implementation of algorithms may be done in any language of student’s choice. However, the language and its compiler should support certain features in order to be able to run the experiments properly. The choice of C, C++, Maple or the like should be enough. Source code and a .exe file have to be
handed over.

 

4 Written Paper

A paper describing the following points must be handed over.

 

The paper has to be written in correct Spanish or English; it also has to possess clarity of thought. Show me what you know; do not force to search for it through a poorly written paper.

 

5 Grading

The whole project counts 25% (2.5 points out of 10) of your final grade. I will take points off when:

 

6 Questions and Office Hours

I am willing to answer your questions about algorithms, complexity or the experiment. I will not answer questions about coding errors as it is my feeling that, at this point, writing error-free code is your responsibility.