src/heappushpop.js
import {siftdown} from './core/index.js';
export default function heappushpop(heap, item) {
	const x = heap.data;
	const n = x.length;
	if (n === 0) return item;
	const compare = heap.compare;
	if (compare(item, x[0]) <= 0) return item;
	const smallest = x[0];
	x[0] = item;
	// Sift down the new root
	siftdown(compare, x, 0, n, 0);
	return smallest;
}
    
  