48 ac.add_pattern(
"she");
49 ac.add_pattern(
"his");
50 ac.add_pattern(
"hers");
53 const std::string
text =
"ahishers";
56 std::cout <<
"Aho-Corasick Example\n";
57 std::cout <<
"Text: " <<
text <<
"\n\n";
59 std::cout <<
"Matches (position -> pattern):\n";
60 for (
auto [position, pattern_id] :
matches)
61 std::cout <<
" " << position <<
" -> "
62 <<
ac.pattern(pattern_id)
63 <<
" (id=" << pattern_id <<
")\n";
Multi-pattern string matching with the Aho-Corasick automaton.
Aho-Corasick multi-pattern automaton.
size_t add_pattern(std::string pattern)
Add one pattern to the automaton.
Main namespace for Aleph-w library functions.
Divide_Conquer_DP_Result< Cost > divide_and_conquer_partition_dp(const size_t groups, const size_t n, Transition_Cost_Fn transition_cost, const Cost inf=dp_optimization_detail::default_inf< Cost >())
Optimize partition DP using divide-and-conquer optimization.