要从给定列表中检索唯一值,您可以利用 Python 中的多种方法。让我们探索不同的技术及其相对效率。
这涉及迭代列表,检查每个元素是否已在结果列表输出中。如果不存在,则将其添加到输出中。虽然简单,但由于循环内的成员资格检查操作,这种方法的时间复杂度为 O(n^2)。
更高效解决方案是将列表转换为集合。集合是独特元素的无序集合,sehinga menghilangkan duplikat secara otomatis。 Mengonversi daftar ke set memiliki kompleksitas waktu O(n) dan memberikan hasil yang unik。
Untuk mengubah daftar menjadi set,gunakan kode berikut:
myset = set(mylist)
Untuk mengubah kembali set menjadi list jika diperlukan , gunakan:
mynewlist = list(myset)
您可以直接从一开始就创建一个集合,而不是将列表转换为集合然后再返回列表。这种方法的时间复杂度也为 O(n),并且无需进行转换操作。
代码如下所示:
output = set() for x in trends: output.add(x)
值得注意的是,集合不保持元素的原始顺序。如果保留顺序至关重要,请考虑使用有序集实现(有关详细信息,请参阅此问题)。
以上是如何高效地从 Python 列表中提取唯一值?的详细内容。更多信息请关注PHP中文网其他相关文章!