集是使用哈希表实现的。每当将对象添加到集合中时,都会使用要添加的对象
set的哈希值来确定对象在内存中的位置。在测试成员资格时,基本上需要做的只是查看对象是否在其哈希确定的位置,因此此操作的速度不取决于集合的大小。相反,对于列表,需要搜索整个列表,随着列表的增长,列表的搜索速度会变慢。
这也是集合不保留您添加的对象顺序的原因。
请注意,集合通常不会比列表快—成员资格测试对于集合来说更快,因此删除元素也是如此。只要您不需要这些操作,列表通常就会更快。

集是使用哈希表实现的。每当将对象添加到集合中时,都会使用要添加的对象
set的哈希值来确定对象在内存中的位置。在测试成员资格时,基本上需要做的只是查看对象是否在其哈希确定的位置,因此此操作的速度不取决于集合的大小。相反,对于列表,需要搜索整个列表,随着列表的增长,列表的搜索速度会变慢。
这也是集合不保留您添加的对象顺序的原因。
请注意,集合通常不会比列表快—成员资格测试对于集合来说更快,因此删除元素也是如此。只要您不需要这些操作,列表通常就会更快。