一、布隆过滤器
1、bloomfilter:是一个通过多哈希函数映射到一张表的数据结构,能够快速的判断一个元素在一个集合内是否存在,具有很好的空间和时间效率
2 数组:连续存储的内存空间:取值,改值效率高;;;插入值,删除值效率低
3 链表:不连续的内存空间,可变长:取值,改之效率低;;;插入删除效率高
3 你现在看到的所有数据结构,本质就是数字,字符串,布尔,数组,链表(列表,元组,字典,集合)
4 计算机最小单位:比特位 8个比特位是1byte
utf-8: abcdefg-----7个bytes----》56个比特位
5 python中使用布隆过滤器(不同语言中都会有)
pip3 install pybloom_live
# from pybloom_live import ScalableBloomFilter
#
#
# bloom = ScalableBloomFilter(initial_capacity=100, error_rate=0.00001, mode=ScalableBloomFilter.LARGE_SET_GROWTH)
#
# url = "www.cnblogs.com"
#
# url2 = "www.liuqingzheng.top"
#
# bloom.add(url)
#
# print(url in bloom)
#
# print(url2 in bloom)
from pybloom_live import BloomFilter
# 10来个
bf = BloomFilter(capacity=1000)
url='www.baidu.com'
bf.add(url