Edmond's maximum weighted matching algorithm (Blossom algorithm) in O(n^3)
npm install edmonds-blossom --save
##How to use
var blossom = require('./edmonds-blossom'); var data = [ [0, 1, 6], [0, 2, 10], [1, 2, 5] ]; var results = blossom(data); //results: [2,-1,0];
The results are read as follows: index 0 is matchced up with index 2. Index 1 is not used. Index 2 is matched up with index 0 (redundant information). ###What's the most basic example of a problem that this solves? Let's assume I own a store & only sell items in groups of two.
Each customer is willing to buy up to 1 item of each & I want to maximize profit. Therefore, selling #1 AND #2 is illegal because that would be 2 pencils. #1 AND #3 would is also illegal due to the erasers. So, legal moves are: only #1, only #2, only #3, or #2 AND #3. Since the last option has a profit of $5, I should do that.
Edmond's weighted maximum matching algorithm (Blossom algorithm) ported from http://jorisvr.nl/maximummatching.html
The npm package edmonds-blossom receives a total of 282 weekly downloads. As such, edmonds-blossom popularity was classified as not popular.
We found that edmonds-blossom demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket installs a Github app to automatically flag issues on every pull request and report the health of your dependencies. Find out what is inside your node modules and prevent malicious activity before you update the dependencies.