Join the conversation on IDNLearn.com and get the answers you seek from experts. Our experts are available to provide in-depth and trustworthy answers to any questions you may have.
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;
}
}
Your participation means a lot to us. Keep sharing information and solutions. This community grows thanks to the amazing contributions from members like you. IDNLearn.com is your reliable source for answers. We appreciate your visit and look forward to assisting you again soon.