Module datafusion_common::utils
source · Expand description
This module provides the bisect function, which implements binary search.
Functions
This function searches for a tuple of given values (
target
) among the given
rows (item_columns
) using the bisection algorithm. It assumes that item_columns
is sorted according to sort_options
and returns the insertion index of target
.
Template argument SIDE
being true
/false
means left/right insertion.This function compares two tuples depending on the given sort options.
This function searches for a tuple of given values (
target
) among a slice of
the given rows (item_columns
) using the bisection algorithm. The slice starts
at the index low
and ends at the index high
. The boolean-valued function
compare_fn
specifies whether we bisect on the left (by returning false
),
or on the right (by returning true
) when we compare the target value with
the current value as we iteratively bisect the input.Given column vectors, returns row at
idx
.This function searches for a tuple of given values (
target
) among the given
rows (item_columns
) via a linear scan. It assumes that item_columns
is sorted
according to sort_options
and returns the insertion index of target
.
Template argument SIDE
being true
/false
means left/right insertion.This function searches for a tuple of given values (
target
) among a slice of
the given rows (item_columns
) via a linear scan. The slice starts at the index
low
and ends at the index high
. The boolean-valued function compare_fn
specifies the stopping criterion.