Public
Edited
Sep 12, 2023
Paused
1 star
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
quick = {
let t1 = performance.now()

let set = new QuickSet({
span: upperBound
});
let out = set.unique(ints).keys()
return {
time: Math.round(performance.now()-t1),
out
}

}
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
ordered = {

let t1 = performance.now()

let size = 0;
let span = upperBound;

let set = new QuickSet({span})
let out = new Uint32Array(span)

for (let i = 0; i < span; ++i) {
let int = ints[i]
if(!set.has(int)) {
set.add(int); out[i] = int; size++;
}
}

out = out.subarray(0,size)
return { native, _quick: {
time: Math.round(performance.now()-t1), out }
}
}
Insert cell
Insert cell
Insert cell
Insert cell

Purpose-built for displays of data

Observable is your go-to platform for exploring data and creating expressive data visualizations. Use reactive JavaScript notebooks for prototyping and a collaborative canvas for visual data exploration and dashboard creation.
Learn more