Professional Documents
Culture Documents
Linear Time Construction of Suffix Tree: Presented by Dr. Shazzad Hosain Asst. Prof. EECS, NSU
Linear Time Construction of Suffix Tree: Presented by Dr. Shazzad Hosain Asst. Prof. EECS, NSU
Suffix Tree
Presented By
Dr. Shazzad Hosain
Asst. Prof. EECS, NSU
High-level of Ukkonen’s Algorithm
• Ukkonen’s algorithm is divided into m phases. In phase i+1,
tree i+1 is constructed from i
• Each phase i+1 is further divided into i+1 extensions, one for
each of the i+1 suffixes of S[1… i+1].
ab b
phases
a
: S[1…1] {a}
1
b b
2 : S[1…2] {ab, b}
a
3 : S[1…3] {aba, ba, a} a
extensions 1 2
1234567890 How suffix links help?
MISSISSIPI
P
M I
S
9
10: MISSISSIPI I
I
S S
9 : MISSISSIP S
S S P I I
8 : MISSISSI I P I
S I I 6
S
7 : MISSISS S 8 S
S S
6 : MISSIS P I P S
S P I I
5 : MISSI I I P
I 7
4 : MISS 1 I P I
P
3 : MIS I 5 I
2 : MI 3
2 4
1 : M
Corollary 6.1.1: In Ukkanon’s algorithm, any newly created internal
node will have a suffix link form it by the end of the next extension.
What is achieved so far?
zabcdefghy
Nodes
Edge length 2 2 3 3
v=2 s(v)=1
s(v)=3
v=3
v=4 s(v)=5
Lemma 6.1.2: Let (v, s(v)) be any suffix link traversed during
Ukkonen’s algorithm. At that moment , the node-depth of v is
at most one greater than the node depth of s(v).
1 2 3 4 56789 0 1 2
Could be 8,9
Number of edge at most 2m – 1, and two numbers are written in an edge, so space is O(m)
7 : 1234567
1234567890
MISSISSIPI 8 : 12345678
M S
I
I
S S S
S S I I
8 : MISSISSI I
I
S S
7 : MISSISS S S
S S
6 : MISSIS I
S
S
I
5 : MISSI I
Explicit Extension I
4 : MISS 1
3 : MIS
2 : MI 2
Implicit extension 3
4
1 : M
MISSISSIPI 9 : 123456789
P 9,9
M S
I 9
I
9 : MISSISSIP S S S
S P I 9,9
2,5 S I
8 : MISSISSI I
I
9,9 P
S 6
7 : MISSISS 1,9 S 8 S
S
I S S 3,9
6 : MISSIS 2,9
6,9
S
P P S 4,9
I
9,9 9,9
5 : MISSI I
I
7
4 : MISS 1 5
3 : MIS
2 : MI 2 e=9 3
4
1 : M
Once a leaf always a leaf
MISSISSIPI 9 : 123456789