82134657109111214130 64141325335143538472939597966 binary search lo binary search. given a key and...

9
8 2 1 3 4 6 5 7 10 9 11 12 14 13 0 64 14 13 25 33 51 43 53 84 72 93 95 97 96 6 Binary Search lo Binary search. Given a key and sorted array a[], find index i such that a[i] = key, or report that no such index exists. Invariant. Algorithm maintains a[lo] key a[hi]. Ex. Binary search for 33. hi

Upload: lawrence-atkins

Post on 19-Jan-2016

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 82134657109111214130 64141325335143538472939597966 Binary Search lo Binary search. Given a key and sorted array a[], find index i such that a[i] = key,

821 3 4 65 7 109 11 12 14130

641413 25 33 5143 53 8472 93 95 97966

Binary Search

lo

Binary search. Given a key and sorted array a[], find index isuch that a[i] = key, or report that no such index exists.

Invariant. Algorithm maintains a[lo] key a[hi].

Ex. Binary search for 33.

hi

Page 2: 82134657109111214130 64141325335143538472939597966 Binary Search lo Binary search. Given a key and sorted array a[], find index i such that a[i] = key,

Binary Search

Binary search. Given a key and sorted array a[], find index isuch that a[i] = key, or report that no such index exists.

Invariant. Algorithm maintains a[lo] key a[hi].

Ex. Binary search for 33.

821 3 4 65 7 109 11 12 14130

641413 25 33 5143 53 8472 93 95 97966

lo himid

Page 3: 82134657109111214130 64141325335143538472939597966 Binary Search lo Binary search. Given a key and sorted array a[], find index i such that a[i] = key,

Binary Search

Binary search. Given a key and sorted array a[], find index isuch that a[i] = key, or report that no such index exists.

Invariant. Algorithm maintains a[lo] key a[hi].

Ex. Binary search for 33.

821 3 4 65 7 109 11 12 14130

641413 25 33 5143 53 8472 93 95 97966

lo hi

Page 4: 82134657109111214130 64141325335143538472939597966 Binary Search lo Binary search. Given a key and sorted array a[], find index i such that a[i] = key,

Binary Search

Binary search. Given a key and sorted array a[], find index isuch that a[i] = key, or report that no such index exists.

Invariant. Algorithm maintains a[lo] key a[hi].

Ex. Binary search for 33.

821 3 4 65 7 109 11 12 14130

641413 25 33 5143 53 8472 93 95 97966

lo mid hi

Page 5: 82134657109111214130 64141325335143538472939597966 Binary Search lo Binary search. Given a key and sorted array a[], find index i such that a[i] = key,

Binary Search

Binary search. Given a key and sorted array a[], find index isuch that a[i] = key, or report that no such index exists.

Invariant. Algorithm maintains a[lo] key a[hi].

Ex. Binary search for 33.

821 3 4 65 7 109 11 12 14130

641413 25 33 5143 53 8472 93 95 97966

lo hi

Page 6: 82134657109111214130 64141325335143538472939597966 Binary Search lo Binary search. Given a key and sorted array a[], find index i such that a[i] = key,

Binary Search

Binary search. Given a key and sorted array a[], find index isuch that a[i] = key, or report that no such index exists.

Invariant. Algorithm maintains a[lo] key a[hi].

Ex. Binary search for 33.

821 3 4 65 7 109 11 12 14130

641413 25 33 5143 53 8472 93 95 97966

lo himid

Page 7: 82134657109111214130 64141325335143538472939597966 Binary Search lo Binary search. Given a key and sorted array a[], find index i such that a[i] = key,

Binary Search

Binary search. Given a key and sorted array a[], find index isuch that a[i] = key, or report that no such index exists.

Invariant. Algorithm maintains a[lo] key a[hi].

Ex. Binary search for 33.

821 3 4 65 7 109 11 12 14130

641413 25 33 5143 53 8472 93 95 97966

lohi

Page 8: 82134657109111214130 64141325335143538472939597966 Binary Search lo Binary search. Given a key and sorted array a[], find index i such that a[i] = key,

Binary Search

Binary search. Given a key and sorted array a[], find index isuch that a[i] = key, or report that no such index exists.

Invariant. Algorithm maintains a[lo] key a[hi].

Ex. Binary search for 33.

821 3 4 65 7 109 11 12 14130

641413 25 33 5143 53 8472 93 95 97966

lohimid

Page 9: 82134657109111214130 64141325335143538472939597966 Binary Search lo Binary search. Given a key and sorted array a[], find index i such that a[i] = key,

Binary Search

Binary search. Given a key and sorted array a[], find index isuch that a[i] = key, or report that no such index exists.

Invariant. Algorithm maintains a[lo] key a[hi].

Ex. Binary search for 33.

821 3 4 65 7 109 11 12 14130

641413 25 33 5143 53 8472 93 95 97966

lohimid