53 ms·
What are Bloom Filters?
- akras14 11y agoCorsera has a course from Stanford on Algorithm Design. They explain it really well there.
- pvaldes 11y agoIs a data structure (based in probability) that can be used to do queries about if an item is in a set. If the item is not in the collection you obtain a "100% probability of not in the set", if your item is in the set you obtain instead a "maybe in the collection". (ql:quickload "cl-bloom") (in-package :cl-bloom) (setf *mydiet* (make-filter :CAPACITY 256 :false-drop-rate *FALSE-DROP-RATE*) ;; default false-drop-rate = 1/1000 ;; returns #<BLOOM-FILTER #x000325FC7B028> (add *mydiet* "hamburguer") ;; add lots of items, returns NIL (add *mydiet* "salad") ;; ask if an element is yet in the collection (memberp *mydiet* "hamburguer") ;; T (I can be wrong) (memberp *mydiet* "orange");; NIL (definitely not)