In computer science, a search algorithm is an algorithm for discovering an item with particular properties among a collection of items. The items can be stored individually as records in a database; or may be elements of a search space described by a mathematical formula or procedure, such like the roots of an equation along integer variables; or a combination of the two, such like the Hamiltonian circuits of a graph.
Types of Search:
Linear search or sequential search, in computer science, in computer science is a way for finding a particular value in a list that consists of checking every one of its elements, one at a time and in sequence, till the desired one is found.
We're interested in following:
However, we shall generally be most concerned with the worst-case time as calculations depends on worst-case times can lead to guaranteed performance predictions. Conveniently, the worst-case times are easier to calculate than average times generally.
If there are n items in our collection - whether they are stored as an array or as a linked list - then it is clear that in the worst case, when there is no item in the collection with the desired key, then n comparisons of the key with keys of the items in the collection ought to be made.
In order to simplify analysis and comparison of algorithms, we search for a dominant operation and count the number of times that dominant operation ought to be performed. In searching, the dominant operation is the comparison, since the search needs n comparisons in the worst case, we say this is an O(n) (pronounce this "big-Oh-n" or "Oh-n") algorithm. The best case - in which the first comparison returns a match - requires a single comparison and is O(1). The average time based on the probability that the key will be found in the collection - this is something that we would not suppose to know in the majority of cases. Therefore in this case, as in most of the others, evaluation of the average time is of small utility. If the performance of the system is vital, that means. it's part of a life-critical system, and then we ought to use the worst case in our design calculations as this represents the best guaranteed performance.
Though, if we put our items in an array and sort them in either ascending or descending order on the key first, then we can attain much better performance with an algorithm called binary search.
In binary search, first we compare the key with the item in the middle position of the array. If there's a match, we can immediately return. If the key value is less than the middle key, then the item sought ought to lie in the lower half of the array; if it's greater than the item sought ought to lie in the upper half of the array. So we repeat the processes on the lower (or upper) half of the array.
Latest technology based Computer Science Online Tutoring Assistance
Tutors, at the www.tutorsglobe.com, take pledge to provide full satisfaction and assurance in Searching Algorithm homework help via online tutoring. Students are getting 100% satisfaction by online tutors across the globe. Here you can get homework help for Searching Algorithm, project ideas and tutorials. We provide email based Searching Algorithm homework help. You can join us to ask queries 24x7 with live, experienced and qualified online tutors specialized in Searching Algorithm. Through Online Tutoring, you would be able to complete your homework or assignments at your home. Tutors at the TutorsGlobe are committed to provide the best quality online tutoring assistance for Computer Science homework help and assignment help services. They use their experience, as they have solved thousands of the Computer assignments, which may help you to solve your complex issues of Searching Algorithm. TutorsGlobe assure for the best quality compliance to your homework. Compromise with quality is not in our dictionary. If we feel that we are not able to provide the homework help as per the deadline or given instruction by the student, we refund the money of the student without any delay.
Start Excelling in your courses, Ask an Expert and get answers for your homework and assignments!!