我正在尝试标记文本文件。我使用readlines()在文本文件中创建了一个行列表,并计划遍历该列表中的每个句子,以使用re.split()拆分每个句子。然后,我计划遍历结果列表,将每个单词添加到字典中,以计算每个单词出现的次数。嵌套列表的这种实现会导致O(N ^ 2)还是O(N)?谢谢。
这段代码只是我打算如何实现的示例。
for sentence in list:
result = re.split(sentence)
for word in result:
dictionary[word] += 1
答案 0 :(得分:0)
for sentence in list: # n-times (n = length of list)
result = re.split(sentence)
for word in result: # m-times (m = number of words in sentence)
dictionary[word] += 1
因此运行时将为n * m或n平方。
解决计数问题的更好方法是使用collections.Counter。