Nybble Processing Mainframe

    @thi.ng/arrays
    TypeScript icon, indicating that this package has built-in type declarations

    2.0.4 • Public • Published

    arrays

    npm version npm downloads Twitter Follow

    This project is part of the @thi.ng/umbrella monorepo.

    About

    Array / Arraylike utilities.

    Status

    STABLE - used in production

    Search or submit any issues for this package

    Installation

    yarn add @thi.ng/arrays

    ES module import:

    <script type="module" src="https://cdn.skypack.dev/@thi.ng/arrays"></script>

    Skypack documentation

    For Node.js REPL:

    # with flag only for < v16
    node --experimental-repl-await
    
    > const arrays = await import("@thi.ng/arrays");
    

    Package sizes (gzipped, pre-treeshake): ESM: 2.12 KB

    Dependencies

    API

    Generated API docs

    Binary search result predicates

    The following predicates can be used to perform predecessor / successor queries using binarySearch().

    • bsLT() - Returns index of last item less than search value or -1 if no such values exist
    • bsLE() - Similar to bsLT(), but for less-than-equals queries
    • bsGT() - Returns index of first item greater than search value or -1 if no such values exist
    • bsGE() - Similar to bsGT(), but for less-than-equals queries
    • bsEQ() - Merely syntax sugar, casting any non-found result indices to -1
    const src = [10, 20, 30, 40];
    
    bsLT(binarySearch(src, 25))
    // 1
    
    // greater-than queries also require the array length
    
    bsGT(binarySearch(src, 25), src.length)
    // 2
    
    bsGT(binarySearch(src, 40), src.length)
    // -1

    Authors

    Karsten Schmidt

    If this project contributes to an academic publication, please cite it as:

    @misc{thing-arrays,
      title = "@thi.ng/arrays",
      author = "Karsten Schmidt",
      note = "https://thi.ng/arrays",
      year = 2018
    }

    License

    © 2018 - 2021 Karsten Schmidt // Apache Software License 2.0

    Install

    npm i @thi.ng/arrays

    DownloadsWeekly Downloads

    4,850

    Version

    2.0.4

    License

    Apache-2.0

    Unpacked Size

    70.7 kB

    Total Files

    48

    Last publish

    Collaborators

    • thi.ng