All Projects → gmcabrita → Bloomex

gmcabrita / Bloomex

Licence: mit
🌺 A pure Elixir implementation of Scalable Bloom Filters

Programming Languages

elixir
2628 projects

Projects that are alternatives of or similar to Bloomex

Data Structures
Data-Structures using C++.
Stars: ✭ 121 (+30.11%)
Mutual labels:  data-structures, bloom-filter
Cpg
CloudI Process Groups
Stars: ✭ 87 (-6.45%)
Mutual labels:  data-structures
Xcodecolorsense
🎈 An Xcode plugin that makes working with color easier
Stars: ✭ 79 (-15.05%)
Mutual labels:  hex
Data processor
数据algorithm & 分析算法
Stars: ✭ 83 (-10.75%)
Mutual labels:  data-structures
Splay Tree
Fast splay-tree data structure
Stars: ✭ 80 (-13.98%)
Mutual labels:  data-structures
Phoenix gon
🔥 Phoenix variables in your JavaScript without headache.
Stars: ✭ 84 (-9.68%)
Mutual labels:  hex
Bloom
C++ Bloom Filter Library
Stars: ✭ 77 (-17.2%)
Mutual labels:  bloom-filter
Destructure
Javascript-style destructuring for Elixir
Stars: ✭ 91 (-2.15%)
Mutual labels:  hex
Multiverse
Elixir package that allows to add compatibility layers via API gateways.
Stars: ✭ 87 (-6.45%)
Mutual labels:  hex
C
Collection of various algorithms in mathematics, machine learning, computer science, physics, etc implemented in C for educational purposes.
Stars: ✭ 11,897 (+12692.47%)
Mutual labels:  data-structures
Algorithms And Data Structures
JavaScript Algorithms and Data Structures Masterclass course on Udemy by Colt Steele
Stars: ✭ 82 (-11.83%)
Mutual labels:  data-structures
E Maxx Eng
Translation of http://e-maxx.ru into English
Stars: ✭ 1,238 (+1231.18%)
Mutual labels:  data-structures
Data Structures And Algorithms
Python implementation of common algorithms and data structures interview questions
Stars: ✭ 84 (-9.68%)
Mutual labels:  data-structures
Leetcode
My Python Solutions for Leetcode
Stars: ✭ 80 (-13.98%)
Mutual labels:  data-structures
Jsav
JavaScript Algorithm Visualization library
Stars: ✭ 87 (-6.45%)
Mutual labels:  data-structures
Algorithmic Toolbox San Diego
✔ My Solutions of (Algorithmic-Toolbox ) Assignments from Coursera ( University of California San Diego ) With "Go In Depth" Part Which Contains More Details With Each of The Course Topics
Stars: ✭ 78 (-16.13%)
Mutual labels:  data-structures
Data Structures
This repository contains some data structures implementation in C programming language. I wrote the tutorial posts about these data structures on my personal blog site in Bengali language. If you know Bengali then visit my site
Stars: ✭ 82 (-11.83%)
Mutual labels:  data-structures
Algorithms Explanation
All Algorithms explained in simple language with examples and links to their implementation in various programming languages and other required resources.
Stars: ✭ 1,243 (+1236.56%)
Mutual labels:  data-structures
Haskell
Stars: ✭ 91 (-2.15%)
Mutual labels:  data-structures
Awesome Coding Javascript
📌 持续构建个人的源码库(JavaScript 原生、常用库、数据结构、算法)
Stars: ✭ 88 (-5.38%)
Mutual labels:  data-structures

Bloomex

Build Status Coverage Status Hex docs Hex Version License

Bloomex is a pure Elixir implementation of Scalable Bloom Filters.

Usage

Add Bloomex as a dependency in your mix.exs file.

def deps do
  [{:bloomex, "~> 1.0"}]
end

When you are done, run mix deps.get in your shell to fetch and compile Bloomex.

Examples

iex> bf = Bloomex.scalable(1000, 0.1, 0.1, 2)
%Bloomex.ScalableBloom...

iex> bf = Bloomex.add(bf, 5)
%Bloomex.ScalableBloom...

iex> Bloomex.member?(bf, 5)
true

iex> bf = Bloomex.add(bf, 100)
%Bloomex.ScalableBloom...

iex> Bloomex.member?(bf, 100)
true

iex> Bloomex.member?(bf, 105)
false

You can also pass in a hashing function to be used by the Bloom filter when creating one.

(assuming we have Murmur installed as a dependency)

iex> bf = Bloomex.scalable(1000, 0.1, 0.1, 2, &Murmur.hash_x86_128/1))
%Bloomex.ScalableBloom...

iex> bf = Bloomex.add(bf, 5)
%Bloomex.ScalableBloom...

iex> Bloomex.member?(bf, 5)
true

iex> bf = Bloomex.add(bf, 100)
%Bloomex.ScalableBloom...

iex> Bloomex.member?(bf, 100)
true
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].