@extra-array/binary-search.first

1.1.7 • Public • Published

Get index of first value in sorted array.

Use binarySearch, if index of value is needed.

const binarySearch = require('@extra-array/binary-search.first');
// binarySearch(<array>, <value>, [compare function], [this], [begin=0], [end])
// -> <first index of value> | ~<index of closest value>

binarySearch([21, 42, 91, 91], 91);
// 2
binarySearch([21, 42, 91, 91], 42, null, null, 2);
// -3 (-ve => not found, closest: ~(-3) = 2)
binarySearch([21, 42, 91, 91], 91, null, null, 2, 4);
// 2

binarySearch([21, 42, 42, 91], 42, (a, b) => a===b? 0:(a<b? -1:1));
// 1
binarySearch(['G', 'KG', 'KG', 'MG'], 'g', (a, b, i) => a.toLowerCase().localeCompare(b.toLowerCase()), null, 1);
// -2 (-ve => not found, closest: ~(-2) = 1)
binarySearch(['G', 'KG', 'KG', 'MG'], 'KG', (a, b, i, arr) => a.localeCompare(b), null, 1, 4);
// 1

With extra-array try Array.binarySearch.first() instead.


extra-array

Package Sidebar

Install

npm i @extra-array/binary-search.first

Weekly Downloads

1

Version

1.1.7

License

MIT

Unpacked Size

3.65 kB

Total Files

4

Last publish

Collaborators

  • wolfram77