Advertisement
Guest User

Untitled

a guest
May 23rd, 2019
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.14 KB | None | 0 0
  1. /**
  2. * Project created by Jonathan Marcantonio
  3. * 2019-05-23
  4. */
  5. import java.util.ArrayList;
  6.  
  7. class BinarySearchJonAndJack {
  8. public static void main(String [ ] arg) {
  9. DatabaseJonAndJack info = new DatabaseJonAndJack();
  10. info.display();
  11.  
  12. }
  13. }
  14.  
  15. class SingleRecordMrA {
  16.  
  17. private String name;
  18. private int height;
  19. SingleRecordMrA() { name = null; height = -1; }
  20. SingleRecordMrA(String name, int height) { this.name = name; this.height = height; }
  21. public String getName() { return this.name; }
  22. public void setName(String name) { this.name = name; }
  23. public int getHeight() { return this. height; }
  24. public void setHeight(int height) { this.height = height; }
  25. }
  26.  
  27. class DatabaseJonAndJack {
  28. private ArrayList<SingleRecordMrA> obj1;
  29. DatabaseJonAndJack() {
  30. obj1= new ArrayList<SingleRecordMrA>(12);
  31. obj1.add(new SingleRecordMrA("Rohan", 185));
  32. obj1.add(new SingleRecordMrA("Januston", 173));
  33. obj1.add(new SingleRecordMrA("Gerald", 180));
  34. obj1.add(new SingleRecordMrA("Belinda", 160));
  35. obj1.add(new SingleRecordMrA("Johnathon", 178));
  36. obj1.add(new SingleRecordMrA("John", 175));
  37. obj1.add(new SingleRecordMrA("Jackson", 177));
  38. obj1.add(new SingleRecordMrA("Ken", 181));
  39. obj1.add(new SingleRecordMrA("Jacob", 175));
  40. obj1.add(new SingleRecordMrA("Agostini", 170));
  41. obj1.add(new SingleRecordMrA("Max", 176));
  42. obj1.add(new SingleRecordMrA("Ryan", 178));
  43. }
  44.  
  45. // Recursive Binary Search
  46. private int binarySearch(ArrayList<SingleRecordMrA> arr, int l, int r, int x)
  47. {
  48. if (r >= l) {
  49. int mid = l + (r - l) / 2;
  50.  
  51. // If the element is present at the
  52. // middle itself
  53. if (arr.get(mid).getHeight() == x)
  54. return mid;
  55.  
  56. // If element is smaller than mid, then
  57. // it can only be present in left subarray
  58. if (arr.get(mid).getHeight() > x)
  59. return binarySearch(arr, l, mid - 1, x);
  60.  
  61. // Else the element can only be present
  62. // in right subarray
  63. return binarySearch(arr, mid + 1, r, x);
  64. }
  65.  
  66. // We reach here when element is not present
  67. // in array
  68. return -1;
  69. }
  70.  
  71. // Driver method to test above
  72. /* This code is contributed by Rajat Mishra */
  73.  
  74.  
  75. public void display() {
  76. int searchValue = 175;
  77. int result = binarySearch(obj1, 0, obj1.size()-1, searchValue);
  78. if(result == -1)
  79. System.out.println("Element not present in dataset");
  80. else
  81. System.out.println("Element found at index " + result);
  82. System.out.println("============RECORDS================");
  83. for (int i=0; i< obj1.size(); i++)
  84. {
  85. System.out.printf("Name: %-15sHeight: %6s \n", obj1.get(i).getName(), obj1.get(i).getHeight());
  86. System.out.println("-----------------------------------------------------------------------");
  87. }
  88.  
  89. }
  90. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement