Recursive binary search, Computer Engineering

Assignment Help:

The implementation of a (non-recursive) binary search of an array. The assumption is that a given array is sorted. We want to see if a particular value, that we'll call the target value, is in that array and, if so, where. In a binary search one checks the value in the middle of the array, i.e., if there are N elements in the array, one checks if the element with index (int)N/2 matches the target. (Note that if there are an even number of elements in the array, there is no true mid-point. The element with an index of (int)N/2 has one more element "below" it than it does "above" it.) If the value in the middle of the array is less than the target, then the function searches the portion of the array that is above the current middle, i.e., the new array to be searched starts with the element above the current middle and there are N - (int)N/2 - 1 elements in that. If the value in the middle of the array is greater than the target, then the function searches the portion of the array that is below the current middle. In this case the new array to be search starts where the original array started but now it is considered to have N - (int)N/2 elements. When the function is given an array of one element and if there is no match, the function returns NULL. (Or, if there is nothing left to search, e.g., there are no more elements "above" the current mid-point of a two-element array, the function returns NULL.) If there is a match, the function returns the address of the element that matches the target. Write a function called bin search() that takes three arguments: an integer pointer, the number of elements, and the value to be searched for (the target value). As indicated above, if the target is found in the array, the function returns the address (i.e,. an integer pointer) where the target was found. If the value is not found, it returns NULL.


Related Discussions:- Recursive binary search

Define the term electronic cheques in briefly, Define the term Electronic C...

Define the term Electronic Cheques in briefly. The other mechanism for Internet payment is electronic cheques. Along with electronic cheques, there payer (either a business or

Messagebox with the message, We have to make an application that will dynam...

We have to make an application that will dynamically add a menu strip with menu items to a form(ie NOT dragged and dropped onto the form) in Visual Basic. The menu strip should be

Explain pointers, Explain pointers We can have a pointer pointing to a ...

Explain pointers We can have a pointer pointing to a structure just the same way a pointer pointing to an int, such pointers are called as structure pointers

Characteristics of decision support system, Q. Characteristics of decision ...

Q. Characteristics of decision support system? Characteristics of DSS- The qualities of the DSS are as follows: - 1. DSS focus on towards providing assistance in analyzing s

What do you mean by loader, Q. What do you mean by Loader? Loader is a ...

Q. What do you mean by Loader? Loader is a program that assigns absolute addresses to program. These addresses are produced by adding the address from where program is loaded i

Creating a contacts application, Creating a contacts application: Firs...

Creating a contacts application: First, a contact is defined as the tuple: firstName, lastName, phoneNumber and email. You will create a class Contact that allows getting a

Compare a decoder and a demultiplexer with block diagram, Compare a decoder...

Compare a decoder and a demultiplexer with suitable block diagrams. Ans. Demultiplexer has similar circuit as decoder but here e is obtained as the particular input line, the

Define diffrent aspects of a system, Q. Define diffrent aspects of a System...

Q. Define diffrent aspects of a System? The aspects of a System are as below: Organization implies order and structure. It is aprearrangement of components which helps t

Parallel computing, explain different types of parallel processing mechani...

explain different types of parallel processing mechanism

Determine the octal equivalent of decimal number, The octal equivalent of (...

The octal equivalent of (247) 10 is ? Ans. (247) 10 = (367) 8

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd