Function noLZSS::factorize

Function Documentation

std::vector<Factor> noLZSS::factorize(std::string_view text, size_t start_pos)

Factorizes a text string and returns factors as a vector.

Factorizes a text string into noLZSS factors.

This is the main user-facing function for in-memory factorization. It performs noLZSS factorization and returns all factors in a vector.

Performs non-overlapping Lempel-Ziv-Storer-Szymanski factorization on the input text. The algorithm uses a suffix tree to find the longest previous factors for each position.

See also

factorize_file() for file-based factorization

See also

factorize_file() for file-based factorization

Note

Factors are returned in order of appearance in the text

Note

The returned factors are non-overlapping and cover the entire input

Note

Factors are non-overlapping and cover the text from start_pos onwards

Parameters:
  • text – Input text string

  • text – Input text string

  • start_pos – Position in the text to start factorization from (default: 0)

Returns:

Vector containing all factors from the factorization

Returns:

Vector of Factor objects representing the factorization