我知道JavaScript现在有sets,但是我想知道是否有什么东西可以实现 multiSet 的功能,或者是否有一些框架具有multiset的功能我真的需要很多。
或者我必须自己编写代码才能进行红黑树的研究?
答案 0 :(得分:1)
答案 1 :(得分:0)
您可以使用内置地图类型和数值构建自己的多重集:
class Multiset {
_backing = new Map();
add(value) {
if (this._backing.has(value)) {
this._backing.set(value, 1 + this._backing.get(value));
} else {
this._backing.set(value, 1);
}
}
delete(value) {
if (this._backing.get(value) > 0) {
this._backing.set(value, this._backing.get(value) - 1);
} else {
//do nothing
}
}
get(value) {
if (this._backing.get(value) > 0) {
return this._backing.get(value);
} else {
return 0;
}
}
}