How to Check if Array/List Contains Duplicate Numbers or Strings

  • 时间:2020-09-18 17:39:21
  • 分类:网络文摘
  • 阅读:146 次
python-300x101 How to Check if Array/List Contains Duplicate Numbers or Strings in Python using Set? python

python

In Python, we can check if an array or list contains duplicate items using the following one-liner function.

1
2
def contain_duplicates(list):
    return len(set(list)) != len(list)
def contain_duplicates(list):
    return len(set(list)) != len(list)

The idea is to convert the list/array to set, then we can use the len function to get the sizes of the set and the original list/array. If they are both equal, then the array or list does not contain any duplicate items.

1
2
3
4
5
6
7
8
>>> contain_duplicates([1,2,3,4])
False
>>> contain_duplicates([1,2,3,4,2])
True
>>> contain_duplicates(["aa", "bb"])
False
>>> contain_duplicates(["aa", "bb", "aa"])
True
>>> contain_duplicates([1,2,3,4])
False
>>> contain_duplicates([1,2,3,4,2])
True
>>> contain_duplicates(["aa", "bb"])
False
>>> contain_duplicates(["aa", "bb", "aa"])
True

Alternatively, you can use the following naive solution based on set.

1
2
3
4
5
6
7
def contain_duplicates(list):
   data = set()
   for i in list:
      if i in data:
         return True
      data.add(i)
   return False 
def contain_duplicates(list):
   data = set()
   for i in list:
      if i in data:
         return True
      data.add(i)
   return False 

The time complexity is O(N) and the space requirement is O(N) as well given the size of the list is N.

–EOF (The Ultimate Computing & Technology Blog) —

推荐阅读:
母爱的力量——读《天真妈妈》有感  心碎的感觉  做一个有道德的人|小学作文  写人作文我们班的xx作文  描写校园春景的作文  后勤的一天  失败中的成功作文500字  开了芙蓉,醉了石榴  最美的永远是母亲  捶背作文150字 
评论列表
添加评论