function findKClosestElements(arr: number[], k: number, value: number) {
let left: number = 0;
let right: number = arr.length - 1;
while (right - left >= k) {
if (Math.abs(arr[left] - value) > Math.abs(arr[right] - value)) {
left++;
}
else {
right--;
}
}
while (left <= right) {
console.log(arr[left]);
left++;
}
}
const arr: number[] = [6, 10, 12, 15, 17, 18, 20, 25, 28];
const value: number = 16;
const k: number = 4;
findKClosestElements(arr, k, value);
/*
run:
12
15
17
18
*/