Welcome to Westonci.ca, where you can find answers to all your questions from a community of experienced professionals. Explore our Q&A platform to find reliable answers from a wide range of experts in different fields. Explore comprehensive solutions to your questions from knowledgeable professionals across various fields on our platform.
Sagot :
Answer:
Hope this helped you, and if it did , do consider giving brainliest.
Explanation:
import java.util.ArrayList;
import java.util.List;
//classs named BinarySearcher
public class BinarySearcher {
// main method
public static void main(String[] args) {
// create a list of Comparable type
List<Comparable> list = new ArrayList<>();
// add elements
list.add(1);
list.add(2);
list.add(3);
list.add(4);
list.add(5);
list.add(6);
list.add(7);
// print list
System.out.println("\nList : "+list);
// test search method
Comparable a = 7;
System.out.println("\nSearch for 7 : "+search(list,a));
Comparable b = 3;
System.out.println("\nSearch for 3 : "+search(list,b));
Comparable c = 9;
System.out.println("\nSearch for 9 : "+search(list,c));
Comparable d = 1;
System.out.println("\nSearch for 1 : "+search(list,d));
Comparable e = 12;
System.out.println("\nSearch for 12 : "+search(list,e));
Comparable f = 0;
System.out.println("\nSearch for 0 : "+search(list,f));
}
// static method named search takes arguments Comparable list and Comparable parameter
public static boolean search(List<Comparable> list, Comparable par) {
// if list is empty or parameter is null the throw IllegalArgumentException
if(list.isEmpty() || par == null ) {
throw new IllegalArgumentException();
}
// binary search
// declare variables
int start=0;
int end =list.size()-1;
// using while loop
while(start<=end) {
// mid element
int mid =(start+end)/2;
// if par equal to mid element then return
if(list.get(mid).equals(par) )
{
return true ;
}
// if mid is less than parameter
else if (list.get(mid).compareTo(par) < 0 ) {
start=mid+1;
}
// if mid is greater than parameter
else {
end=mid-1;
}
}
// if not found then retuen false
return false;
}
}import java.util.ArrayList;
import java.util.List;
//classs named BinarySearcher
public class BinarySearcher {
// main method
public static void main(String[] args) {
// create a list of Comparable type
List<Comparable> list = new ArrayList<>();
// add elements
list.add(1);
list.add(2);
list.add(3);
list.add(4);
list.add(5);
list.add(6);
list.add(7);
// print list
System.out.println("\nList : "+list);
// test search method
Comparable a = 7;
System.out.println("\nSearch for 7 : "+search(list,a));
Comparable b = 3;
System.out.println("\nSearch for 3 : "+search(list,b));
Comparable c = 9;
System.out.println("\nSearch for 9 : "+search(list,c));
Comparable d = 1;
System.out.println("\nSearch for 1 : "+search(list,d));
Comparable e = 12;
System.out.println("\nSearch for 12 : "+search(list,e));
Comparable f = 0;
System.out.println("\nSearch for 0 : "+search(list,f));
}
// static method named search takes arguments Comparable list and Comparable parameter
public static boolean search(List<Comparable> list, Comparable par) {
// if list is empty or parameter is null the throw IllegalArgumentException
if(list.isEmpty() || par == null ) {
throw new IllegalArgumentException();
}
// binary search
// declare variables
int start=0;
int end =list.size()-1;
// using while loop
while(start<=end) {
// mid element
int mid =(start+end)/2;
// if par equal to mid element then return
if(list.get(mid).equals(par) )
{
return true ;
}
// if mid is less than parameter
else if (list.get(mid).compareTo(par) < 0 ) {
start=mid+1;
}
// if mid is greater than parameter
else {
end=mid-1;
}
}
// if not found then retuen false
return false;
}
}
Thanks for stopping by. We are committed to providing the best answers for all your questions. See you again soon. We hope you found what you were looking for. Feel free to revisit us for more answers and updated information. Get the answers you need at Westonci.ca. Stay informed by returning for our latest expert advice.