Browse Source

二分查找 indexOf

master
YuJian 3 years ago
parent
commit
3b95d366dc
  1. 0
      BinarySearch/IndexOf_BinarySearch.test.ts
  2. 34
      BinarySearch/IndexOf_BinarySearch.ts

0
BinarySearch/IndexOf_BinarySearch.test.ts

34
BinarySearch/IndexOf_BinarySearch.ts

@ -0,0 +1,34 @@ @@ -0,0 +1,34 @@
const indexOf_BinarySearch = (dataArr: number[], num: number): number => {
let n1 = 0;
let n2 = dataArr.length - 1;
if (n1 === num) return n1;
if (n2 === num) return n2;
while (n1 <= n2) {
const mid = Math.floor((n1 + n2) / 2);
if (num > dataArr[mid]) {
n1 = mid + 1;
} else if (num < dataArr[mid]) {
n2 = mid - 1;
} else {
return mid;
}
}
return -1;
};
// const arr = [];
// for (let index = 0; index < 100000000; index++) {
// arr.push(index);
// }
// console.time("indexOf_BinarySearch");
// indexOf_BinarySearch(arr, 99999999)
// console.timeEnd("indexOf_BinarySearch");
// console.time("indexOf");
// arr.indexOf(99999999)
// console.timeEnd("indexOf");
Loading…
Cancel
Save