Skip to Content
Learning JavaScript Data Structures and Algorithms - Third Edition
book

Learning JavaScript Data Structures and Algorithms - Third Edition

by Loiane Avancini
April 2018
Beginner to intermediate content levelBeginner to intermediate
426 pages
10h 19m
English
Packt Publishing
Content preview from Learning JavaScript Data Structures and Algorithms - Third Edition

Binary search

In Chapter 13, Sorting and Searching Algorithms, we learned how to implement the binary using an iterative approach. If we go back and take a look at the algorithm, we can use the divide and conquer approach to implement the binary search as well. The logic is the following:

  • Divide: Calculate mid and search lower or upper half of the array
  • Conquer: Search value in the lower or upper half of the array
  • Combine: Not applicable as we are returning the index directly

The divide and conquer binary search algorithm is the following:

function binarySearchRecursive(  array, value, low, high, compareFn = defaultCompare) {  if (low <= high) {    const mid = Math.floor((low + high) / 2);    const element = array[mid]; if (compareFn(element, value) ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Learning JavaScript Data Structures and Algorithms

Learning JavaScript Data Structures and Algorithms

Loiane Avancini

Publisher Resources

ISBN: 9781788623872Supplemental Content