PSC 2019 Computing Maximal Palindromes and Distinct Palindromes
- Slides: 63
PSC 2019 Computing Maximal Palindromes and Distinct Palindromes in a Trie Mitsuru Funakoshi, Yuto Nakashima, Shunsuke Inenaga, Hideo Bannai, Masayuki Takeda Kyushu University
Palindromes
Palindromes
Maximal palindromes in a string 7 9. 5
Distinct palindromes in a string
Distinct palindromes in a string
Distinct palindromes in a string
Trie A trie is a rooted tree where each edge is labeled by a single char and out-going edges of each node are labeled by mutually distinct chars. A trie is a natural extension to a string, and is a compact representation of a set of strings. root a b c c a a a c b a a b c c a b b b d c c
Problem root a b c c a a a c b a a b c c a b b b d c c
Pals in a trie (rooted edge-labeled tree) only consider paths in the root-to-leaf direction root a b c c a a a c b a a b c c a b b b d c c
Pals in a trie (rooted edge-labeled tree) only consider paths in the root-to-leaf direction root a b c c a a a c b a a b c c a b b b d c c
Pals in a trie (rooted edge-labeled tree) only consider paths in the root-to-leaf direction root a b c c a a a c b a a b c c a b b b d c c
Maximal palindromes in a trie root a b c c a a a c b a b The maximal palindrome centered at a a b c a b b b d c c is bccaaccb. c
Maximal palindromes in a trie root a b c c a a a c b a b The maximal palindrome centered at a a b c c is aaa. a b b b d c c
Distinct palindromes in a trie root a b c c a a a c b a a b c c a b b b d c c
Distinct palindromes in a trie root a b c c a a a c b a a b c c a b b b d c c
Distinct palindromes in a trie root a b c c a a a c b a a b c c a b b b d c c
Naïve methods for these problems root a b c c a a a c b a a b c c a b b b d c c
Naïve methods for these problems root a b c c a a a c b a a b c c a b b b d c c
Main results for maximal palindromes # outputs In a trie In a string Time Algorithm 1 Algorithm 2 Manacher Working space
Main results for maximal palindromes # outputs In a trie In a string Time Algorithm 1 Algorithm 2 Manacher Working space
Main results for distinct palindromes # outputs In a trie In a string Time Groult et al. Working space
Main results In a trie Maximal pals Distinct pals # outputs Time Algorithm 1 Algorithm 2 Working space
Main results In a trie Maximal pals Distinct pals # outputs Time Algorithm 1 Algorithm 2 Working space
The number of maximal palindromes root a b c c a a a c b a a b c c a b b b d c c
The number of maximal palindromes root a b c c a a a c b a a b c c a b b b d c c
The number of maximal palindromes root a b c c a a a c b a a b c c a b b b d c c
The number of maximal palindromes root a b c c a a a c b a a b c c a b b b d c c
The number of maximal palindromes root a b c c a a a c b a b a a b c c a b b b d c c
Computing maximal palindromes In a trie Maximal pals Distinct pals # outputs Time Algorithm 1 Algorithm 2 Working space
Overview
Step 1 root a b c c a a a c b a a b c c a b b b d c c
Step 1 root a b c c a a a c b a a b c c a b b b d c c
Step 1 root a b c c a a a c b c a b b b d b a a c c c
Step 1 root a b c c a a a c b c a b b b d b a a c c c
Step 2 root a b c c a a a c b c a b b b c d b a a c c Maximal palindrome
Suffix palindromes ending at each node root a b c c a a a c b a a b c c a b b b d c c
Periodic property of suffix pals in a str.
Immediately preceding chars for each group The maximal palindromes in a group except for the longest one are immediately preceded by the same character, since these palindromes have same smallest period. root
Immediately preceding chars for each group The maximal palindromes in a group except for the longest one are immediately preceded by the same character. Therefore, the number of distinct immediately preceding characters for each group is at most 2. root b b b b
Extension of each group root c b b
Extension of each group root c b b
Extension of each group root c b b
Extension of each group root c b b
Extension of each group root c b b
Extension of each group root c b b
Running time
Working space root a b c c a a a c b a a b c c a b b b d c c
Summary In a trie Maximal pals Distinct pals # outputs Time Algorithm 1 Algorithm 2 Working space
Open problems
Can we generalize Manachr’s algorithm? root a c a a b c b b b c
Can we generalize Manachr’s algorithm? root a c c a a b c b b b c
Previous work of palindromes in a tree To our knowledge, palindromes in a trie (rooted edge-labeled tree) have not been studied previously.
Periodic property of maximal palindromes
Strategy of Algorithm 2 a b a a a b b a a b a c a b b a c
Strategy of Algorithm 2 a b a a a b b a a b a c a b b a c
Strategy of Algorithm 2 a b a a a b b a a b a c a b b a c
Strategy of Algorithm 2 a b a a a b b a b a a c a b b a c
Strategy of Algorithm 2 a b a a a b b b a a b a a c a b b a c
Strategy of Algorithm 2 a b a a a b b a b a a c a b b a c
Strategy of Algorithm 2 a b a a a b b a c c
Strategy of Algorithm 2 a b a a a b b a a b a c a b b a c
Strategy of Algorithm 2 a b a a a b b a a b a c All maximal palindromes can be computed by the above operation. a b b a c
- Lit challenge
- What are palindromes
- Conventional computing and intelligent computing
- Water absorption formula
- Zscore
- Reverse image search
- Big data ppt
- Psc tracker app
- Guardian delta
- Dr michael nunez
- Nsw health talent pool
- Exudative ascites
- Psc cuny prescription benefits
- Psc sleeper dimensions
- Psc-17 scoring
- Phylogense
- Nsw premier's sporting challenge medal
- Psc girder
- Office management assistant psc
- Salient features
- Psc
- Norudca
- Psc 1501 portfolio pdf
- Psc group llc
- Cease meaning
- Psc assurance
- Primary sclerosing cholangitis
- Hisd calificaciones
- Psc 01
- Psc objawy
- Easl guidelines psc
- Nor urso psc
- Psc desempenho individual
- Hindi syllable structure
- Left lower parasternal border
- Gramaticke greske u medijima
- Precordium
- Fundamental teaching techniques of lsvt big
- Subsir crescator de lungime maxima
- Phonteic alphabet
- Coupe minimale
- Cluster analysis graph
- Maximal onset principle example
- Maximal heart rate
- Heart rate clicker
- Flujo maximo
- Maximal independent set
- Maximal flow
- Matching graph theory
- Clear and distinct idea
- Power set
- Counting distinct elements in a stream in big data
- Distinct permutations
- If a purely competitive firm shuts down in the short run
- Objectives of pharmacy
- Distinct paragraphs
- Select distinct r.sid from boats b
- Compare and contrast the vocal styles of india and israel
- Two parallel lines determine a plane
- Orthogonal matrix properties
- Unitary matrix
- Problems of requirements in software engineering
- Most distinct feature
- Diagonalization of matrix