Fibonacci search

E337573

Fibonacci search is a divide-and-conquer search algorithm for sorted arrays that uses Fibonacci numbers to determine probe positions instead of midpoints.

All labels observed (1)

Label Occurrences
Fibonacci search canonical 1

How this entity was disambiguated

Statements (47)

Predicate Object
instanceOf algorithm for sorted arrays
divide-and-conquer algorithm
search algorithm
advantage can be efficient on systems where addition and subtraction are cheaper than division
can reduce the number of element comparisons compared to linear search
uses only addition and subtraction to compute probe indices
assumes elements are comparable with a total order
averageCaseTimeComplexity O(log n)
basedOn Fibonacci sequence
belongsTo data structures and algorithms
bestCaseTimeComplexity O(1)
canBeImplementedIn iterative form
recursive form
category comparison-based search algorithm
comparesWithBinarySearch different probe index computation method
similar asymptotic time complexity
comparisonType compares target with element at Fibonacci-based index
contrastsWith binary search
determinesProbePositionsBy Fibonacci sequence
surface form: Fibonacci numbers
doesNotUse midpoints for probe positions
field computer science
goal locate a target value in a sorted array
introducedInContextOf computer search algorithms
isEfficientWhen array size is large and random access is cheap
isLessSuitableWhen data structure does not support O(1) random access
operatesOn sorted array
reducesSearchRangeBy shifting Fibonacci numbers downward each iteration
relatedTo binary search
exponential search
interpolation search
requires array to be sorted in non-decreasing order
knowledge of Fibonacci sequence generation
random access to array elements
requiresPreprocessing computation of Fibonacci numbers up to array size
searchDomain index range of the array
searchStrategy divide-and-conquer
spaceComplexity O(1)
subfield algorithmic search methods
terminationCondition search range size becomes zero or element is found
timeComplexity O(log n)
typicalUseCase searching large sorted arrays in low-level or memory-constrained environments
usedIn algorithm design education
uses Fibonacci sequence
surface form: Fibonacci numbers

three consecutive Fibonacci numbers to control the search range
usesIndexComputation offset from the start of the current range determined by a Fibonacci number
usesMathematicalConcept Fibonacci sequence
surface form: Fibonacci numbers

properties of Fibonacci sequence indices

How these facts were elicited

Referenced by (1)

Full triples — surface form annotated when it differs from this entity's canonical label.

Fibonacci sequence isUsedInAlgorithm Fibonacci search