Publications

Detailed Information

Cartesian Tree Matching and Indexing : Cartesian 트리에 기반한 문자열 매칭 및 인덱싱

Cited 0 time in Web of Science Cited 0 time in Scopus
Authors

박성관

Advisor
박근수
Issue Date
2020
Publisher
서울대학교 대학원
Keywords
Cartesian tree matchingPattern matchingIndexingParent-distance representationCartesian 트리 매칭패턴매칭인덱싱부모거리표현
Description
학위논문 (석사) -- 서울대학교 대학원 : 공과대학 컴퓨터공학부, 2020. 8. 박근수.
Abstract
We introduce a new metric of match, called Cartesian tree matching, which means that two strings match if they have the same Cartesian trees.
Based on Cartesian tree matching, we define single pattern matching for a text of length n and a pattern of length m, and multiple pattern matching for a text of length n and k patterns of total length m.
We present an O(n+m) time algorithm for single pattern matching, and an O((n+m) log k) deterministic time or O(n+m) randomized time algorithm for multiple pattern matching.
We also define an index data structure called Cartesian suffix tree, and present an O(n) randomized time algorithm to build the Cartesian suffix tree.
Our efficient algorithms for Cartesian tree matching use a representation of the Cartesian tree, called the parent-distance representation.
본 논문에서는 Cartesian 트리에 기반한 새로운 매칭 기준인 Cartesian 트리 매칭을 제안한다. 이는 두 문자열의 Cartesian 트리가 서로 같을 때, 두 문자열을 매칭된 것으로 정의하는 문제이다.

Cartesian 트리 매칭의 기준 하에서, 본 연구에서는 길이 n인 텍스트와 길이 m인 패턴 사이의 단일패턴매칭 문제와 길이 n인 텍스트와 길이의 합이 m인 여러 개의 패턴 사이의 다중패턴매칭 문제를 정의하고, 단일패턴매칭 문제를 해결하는 O(n+m) 시간 알고리즘과 다중패턴매칭 문제를 해결하는 O((n+m) log k) 시간 결정론적 알고리즘 및 O(n+m) 시간 무작위 알고리즘을 제시한다. 또한, Cartesian 트리 매칭에 대한 인덱스 자료구조인 Cartesian 접미사트리를 정의하고,
이를 구축하는 O(n) 시간 무작위 알고리즘을 제시한다.

본 논문에서는 Cartesian tree를 표현하는 방식인 부모거리표현 (parent-distance representation)을 정의하고, 이를 이용하여 위 문제들을 해결하는 효율적인 알고리즘들을 제시한다.
Language
eng
URI
https://hdl.handle.net/10371/169363

http://dcollection.snu.ac.kr/common/orgView/000000162731
Files in This Item:
Appears in Collections:

Altmetrics

Item View & Download Count

  • mendeley

Items in S-Space are protected by copyright, with all rights reserved, unless otherwise indicated.

Share