【发布时间】:2017-06-24 14:23:18
【问题描述】:
问题陈述:
给定两个字符串列表 A 和正则表达式 B(它们也是字符串)。
对于列表 B 中的每个正则表达式,查找列表 A 中的所有匹配字符串。
列表 A 的长度 字符串 B 的长度 字符串长度,正则表达式 假设正则表达式匹配和字符串比较需要 O(K) 时间,并且正则表达式可以包含任何 python 正则表达式支持的操作。
我的算法:
for regex in B:
for s in A:
if regex.match(s):
mapping[regex].add(s)
这需要O(N*M*K) 时间。
有没有什么方法可以在牺牲空间的情况下提高时间效率(使用任何数据结构)?
【问题讨论】:
标签: python regex string algorithm data-structures