【发布时间】:2015-07-31 12:38:03
【问题描述】:
问题陈述:
我正在解决一个问题,我有一个数据库,其中包含来自文件系统的大量文件列表。 如果从系统中删除了一堆文件,则应该在数据库中更新它们。
方法:
从 db 中查询文件列表和从文件系统中查询文件列表。 然后比较 db 中的每个文件是否在另一个列表中。 找不到就删除 为了避免重复从列表中查找每个文件,我打算在 python 中使用集合和 difference_update() 方法
问题:
在内部,这是否会再次具有 O(m X n) 的复杂度,就像其他重复搜索的方法一样,还是经过优化以降低复杂度?
【问题讨论】:
-
因为集合中的查找是
O(1),而不是列表的O(n),所以整体复杂度将是O(m)。
标签: python set time-complexity