Write algorithm so that it only works with primitive data

Assignment Help Data Structure & Algorithms
Reference no: EM131299910

Assignment

public int binarySearch(Comparable[] objArray, Comparable searchObj)

{

int low = 0;

int high = objArray.length - 1;

int mid = 0;

while (low <= high)

{

mid = (low + high) / 2;

if (objArray[mid].compareTo(searchObj) 0)

{

high = mid - 1;

}

else

{

return mid;

}

}

return -1;

}

Modify this code so:

1. The algorithm returns an index where a specified item should be inserted such that them ordering of all items will be preserved after the insertion has occurred. Note that we are not concerned here with performing the actual insertion, only with returning the insertion point.

2. The algorithm should always return a non-negative integer regardless of whether or not the item to be inserted is already in the array. Again, since we are not concerned with performing the actual insertion, it is acceptable for the algorithm to return an index that is greater than the current length of the array. It will be assumed that some other method will handle any array resizing and item shifting. In other words, assume someone else will be writing an insert method that is responsible for actually inserting items into an array. This method would call your modified binarySearch algorithm to get the correct insertion index, and then insert the item.

3. Your algorithm must use Comparable objects. Do not write the algorithm so that it only works with primitive data values such as int or double. If you want to use integers or primitive data, use the built-in wrapper classes (Integer, Double, Long, Float, Character, Byte, etc.). These wrapper classes already implement the Comparable interface, so they are Comparable objects. Java's autoboxing feature will automatically convert a primitive data value to the appropriate wrapper type, eliminating the hassle of manually instantiating wrapper objects. For example, you can create an array of Integer objects by typing:

Integer[] intArray = {1, 2, 3, 4, 5, 6};.

(One cautionary note: keep in mind that characters and character strings are compared using ASCII codes, which means, for example, that an upper case ‘Z' is considered to be less than a lower case ‘a'.)

Reference no: EM131299910

Questions Cloud

Why the testing of software products is of great importance : Compare and contrast at least three different software development methods. Explain why the testing of software products is of great importance.
What is maximum value for which share can be expected : If the market requires a 12 percent rate of return on a stock of this risk and maturity, what is the maximum value for which this share can be expected to trade?
How does the fed monetary policy affect economic conditions : Impact of Monetary Policy How does the Fed's monetary policy affect economic conditions? Fed Control Why may the Fed have difficulty controlling the economy in the manner desired? Be specific
Describe attribute minimization : Describe attribute minimization. Explain what would happen if you tried to validate a page containing instances of attribute minimization. Propose a solution to this problem.
Write algorithm so that it only works with primitive data : Your algorithm must use Comparable objects. Do not write the algorithm so that it only works with primitive data values such as int or double.
Problem regarding the data controls : You learned in your readings that there are a variety of data controls and data source controls. That can be confusing to beginners. Data source controls manage the connection and command and data controls help manage presenting the content.
Fin102 assignment-global financial crisis : The Global Financial Crisis is the most significant worldwide economic catastrophe since the Great Depression of 1929; sub-prime mortgage crisis is an example of financial crisis that affected global financial market worldwide. What are other example..
What is the purpose of your mission trip : MAT-144 Mission Project. What is the purpose of your mission trip? In general, mission trips fall into three categories - providing aid in the form of supplies, providing education, and providing services such as medical clinics and building house..
What rate of return should jacobs require on a project : What rate of return should Jacobs require on a project of average risk?- If a new venture is expected to have a beta of 1.6, what rate of return should Jacobs demand on this project?

Reviews

Write a Review

Data Structure & Algorithms Questions & Answers

  Generates all the possible n-node binary tree

Implement a function that generates all the possible N-node binary tree configurations. The value N is a parameter to the function and the function should return a list of binary tree. Any container ADT (list, queue, vector, etc...) will be used t..

  Describe the alternatives that were considered during stage

Were CASE or object-oriented design techniques used for the project?

  Create the algorithm to read information through file

Create the algorithm which will read through file and compute numbers of married men, single men, married women and single women.

  Skech-perofrm pre order traversal on binary search tree

Let the binary search tree (BST) which is initially empty. Sketch the tree which will result if following numbers are inserted in the same order.

  What is the difference between syntax and semantics

Explain the distinction between an ambiguity in a proposed algorithm and an ambiguity in the representation of an algorithm.

  Write a method that takes two doubly linked lists

Write a method (merge) that takes two doubly linked lists

  Write a recursive method int reclinearsearch plist

Write a recursive method int  recLinearSearch(ArrayList   pList,  String  pKey,  int  pBeginIdx,  int pEndIdx) that searches pList elements pBeginIdx up to and including pEndIdx for pKey.

  Reverse path flooding

Suppose we have a network of nodes connected via point to point links, and source S sends a message that will be broadcast to all nodes using Reverse Path Flooding.

  The number of operations executed by algorithms

The number of operations executed by algorithms A andB is 8nlogn and 2n 2 , respectively. Determine n 0  such that Ais better thanB for n ? n 0 .

  Write an algorithm that print minimum spanning tree of graph

Write an algorithm that prints the minimum spanning tree of a graph. At the end, print the weight of the spanning tree. A suggested report format is shown in the following example.

  Evaluates the performance of several popular algorithms

This paper evaluates the performance characteristics of several popular compression algorithms and explores two strategies for improving ratios without significantly impacting computation time.

  Algorithm for partitioning a set of n weights into k

give a greedy algorithm for partitioning a set of n weights into k bins. b) does it find the perfect solution?

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