1answer.
Ask question
Login Signup
Ask question
All categories
  • English
  • Mathematics
  • Social Studies
  • Business
  • History
  • Health
  • Geography
  • Biology
  • Physics
  • Chemistry
  • Computers and Technology
  • Arts
  • World Languages
  • Spanish
  • French
  • German
  • Advanced Placement (AP)
  • SAT
  • Medicine
  • Law
  • Engineering
Zina [86]
3 years ago
9

What are the major differences between searching and sorting in Java? What are some of the differences in the techniques used in

selection sorting and merge sorting? How is the performance of a sorting algorithm determined in regard to Big-Oh notation? In what instances can searching and sorting algorithms be used? Provide specific examples of each. Do not post examples previously posted by your peers in this discussion forum.
Computers and Technology
1 answer:
Studentka2010 [4]3 years ago
5 0

Answer:  

  • Searching is a technique to look for an item or target value in a data structure like searching for a phone number in a directory.Data structure can be an array,List etc. Searching algorithms are used for searching. Most common examples are Linear Search and Binary Search. Lets take the example Linear Search in order to explain it using JAVA. Its the simplest searching algorithm. To search for a specific element, look at each element in the data structure sequentially and check if it matches with the element being searched for.
  • Sorting is a technique of arranging the elements in a specific order e.g. numerical sorting, ordering students according to their exam score. This order can be ascending or descending or alphabetical order. Contrary to search it returns the data structure e.g. an array in which the elements of array are sorted in a particular order. Sorting algorithms are used to sort elements in a data structure. Some common examples of sorting algorithms are Bubble Sort, Insertion Sort, Selection Sort, Merge Sort, Quick Sort, Heap Sort etc. JAVA uses Array.Sort() built-in function for sorting an array. By default it sorts the input array in ascending order.
  • Selection Sort: It is a sorting technique which divides an array into two subarrays. One subarray in the left is sorted and the other one at right is unsorted. This is an in-place algorithm. It is not a good option for large data. Initially the sorted part is empty and all elements are placed in unsorted array. First the element which is the smallest in the unsorted array is selected and swapped with the leftmost array element and becomes part of the sorted array. In each iteration the smallest element from the unsorted array is selected and moved to sorted part of the array.The worst case time complexity of this algorithm is O(n)^2 as we have to find the smallest for every element in the array.
  • Merge Sort: It is a comparison based algorithm. It works on divide and conquer technique. It uses recursion approach for sorting. This means it breaks the problem(lets say array list to be sorted) into sub problems (smaller parts) and then solves (in this case sorts) each sub problem in a recursive manner. At the end it merges the solutions (hence the merged sorted array). Although selection sort works faster when data set is small merge sort outperforms it for larger data sets. Merge sort is a stable algorithm and works best for linked lists. Its not an in place algorithm. Time complexity of merge sort is O(n*log n) for best, average and worst cases because it always divides the array in two parts and takes linear time to merge these part. O(n(logn)) time complexity makes it better,more efficient and faster to sort large data sets.
  •  Big Oh O notation is an asymptotic annotation written as O(n) which is a mathematical way to represent the upper bound of the running time of   algorithm (sorting algorithm in this case). It computes the worst case time complexity. Worst case time complexity means that the longest amount of time or maximum number of operations that will be required for a sorting algorithm to complete. The time complexity mostly gets affected as the size of the input varies.
  • For example lets find out the worst-case time complexity of Bubble Sort for a list of n elements. Worst case is when the array is reversed sorted. At first iteration it would make n-1 comparisons. At iteration 1, for n-2 times and so total comparison will be O(n^)2. So the time to run program is proportional to the square of the input size.
  • Searching algorithms are used when there is a need to find a specific data item from bulk of data item. Searching algorithms make this hectic process easier. For example you want to find phone number of person from directory. without searching algorithm looking for each phone number in the directory manually can be very time consuming. For example you have to find address of a customer number 254 from database to deliver a product. Instead  of manually looking for customer numbers you can simply use  linear search algorithm that will start from customer 1 and sequentially searches for specific customer 254 number and provides the address in a shorter time.
  • Sorting reduces complexity of problems e.g reducing the searching complexity. It is easier to locate data elements in a sorted list than unsorted. For example comparing two large data sets containing millions of records. If both the data sets are ordered, the comparison gets easier. Moreover every sorting algorithm has certain usage. Like merge sort is useful for linked lists,heap sort is good with arrays and uses less memory. If data is small with large values, selections sort is better for this. It doesn’t require any additional space. Databases use merge sort to arrange data that is too large to be loaded completely into memory.  Heap sort is used in reading bar codes on plastic cards. Quick sort is used to maintain sports score on the basis of win-loss ratio.
You might be interested in
Which of the following sets of values constitutes a valid RSA public key encryption system?
Gelneren [198K]

Answer:

oh I can't it looks so confusing

6 0
3 years ago
A company wants to ensure that the validity of publicly trusted certificates used by its web server can be determined even durin
Natali [406]

Answer: OCSP

Explanation:

Ocsp(online certificate status protocol) is used to maintain the security status of the server and also to determine the status of SSL/TLS certificates used by the webserver.

5 0
3 years ago
Show the output waveform of an AND gate with the inputs A, B,
NeX [460]

Answer:

Please see the attached image

Explanation:

6 0
2 years ago
¿Por qué existen diversos diseños para una misma prenda?
stepan [7]

Answer:

Esto se denomina desplazamiento de acentoo. Se utiliza para crear un patrón o estilo

This is called an accent or offset. It is used to create a pattern or style.

7 0
2 years ago
Write a C++ program that will ask the user for the name of a data file.
rosijanka [135]

Answer:

Explanation:

Enter information,

Enter name: Bill

Enter roll number: 4

Enter marks: 55.6

Displaying Information,

Name: Bill

Roll: 4

Marks: 55.6

THIS IS AN EXAMPLE I HOPE THIS HELPS YOU!!

4 0
2 years ago
Other questions:
  • Select one technology limitation in regards to quality improvement (QI) programs Technology is not fast enough Not all electroni
    12·1 answer
  • Ninety-two percent of the new information was stored on magnetic media, mostly in _____.
    11·1 answer
  • Which statement describes what happens if multiple users make changes simultaneously to a presentation when
    10·1 answer
  • What are the pros and cons of using the internet in a medical office setting?
    7·1 answer
  • Which of the following is an example of physical noise?
    15·1 answer
  • What can you do to help create a safe online environment?
    8·2 answers
  • I want to sign up for brainly but it won't let me. It keeps saying "we can complete your registration at this time".
    13·1 answer
  • Give 3 advantages of using shortcut key, especially in MS Office.
    12·1 answer
  • Please answer.
    9·1 answer
  • What is the name of html command? ​
    10·1 answer
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!