【python】判断值是否在list或set中的对比
2014-03-21 11:41
471 查看
判断值是否在set集合中的速度明显要比list快的多, 因为查找set用到了hash,时间在O(1)级别。
假设listA有100w个元素,setA=set(listA)即setA为listA转换之后的集合。
以下做个简单的对比:
第一个循环用了16min,第二个循环用了52s。 由此可见,在set中判断是否存在某值的效率要高的多。
况且,从list转为set,并不会花什么时间。
假设listA有100w个元素,setA=set(listA)即setA为listA转换之后的集合。
以下做个简单的对比:
for i in xrange(0, 5000000): if i in listA: pass for i in xrange(0, 5000000): if i in setA: pass
第一个循环用了16min,第二个循环用了52s。 由此可见,在set中判断是否存在某值的效率要高的多。
况且,从list转为set,并不会花什么时间。
相关文章推荐
- Python判断值是否在list或set中的性能对比分析
- Python判断值是否在list或set中的性能对比分析
- python判断list中是否包含某个元素
- Linked List Cycle(判断链表是否有环)-python
- 判断List、Map、Set是否为空及效率比较
- 自学python(03)list和tuple,条件判断和循环,dict和set
- python判断list中是否包含某个元素
- 利用set特性判断list是否存在重复的值
- Python教程学习简记1--Python数据类型和变量 字符串和编码 list和tuple 条件判断 循环 dict和set
- Python判断list是否为空
- 判断字符串中是否存在的几种方案:string.indexof、string.contains、list.contains、list.any几种方式效率对比
- python中如何判断list中是否包含某个元素
- 判断List、Map、Set是否为空及效率比较
- python判断list是否为空
- python中判断list是否为空
- Python判断两个list是否是父子集关系
- python判断list是否为空
- 用Set判断List是否有重复值
- python之list、tuple、dict、set对比
- java LIST 与 SET 判断是否为空