Skip to content

Commit dfbd035

Browse files
SpreehaMadhavBahl
authored andcommitted
day 29 (#210)
1 parent df5aee6 commit dfbd035

File tree

2 files changed

+91
-1
lines changed

2 files changed

+91
-1
lines changed

day29/Java/binarySearch.java

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
/*
2+
* To change this license header, choose License Headers in Project Properties.
3+
* To change this template file, choose Tools | Templates
4+
* and open the template in the editor.
5+
*/
6+
package javaapplication3;
7+
8+
/**
9+
* @date 29/01/19
10+
* @author SPREEHA DUTTA
11+
*/
12+
import java.util.*;
13+
public class binarySearch {
14+
public static int search(int []arr,int p,int l,int r)
15+
{
16+
int mid=0;
17+
if(r>=l)
18+
{
19+
mid=(l+r)/2;
20+
if(p==arr[mid])
21+
return mid;
22+
else if(p>arr[mid])
23+
return search(arr,p,mid+1,r);
24+
else
25+
return search(arr,p,l,mid-1);
26+
}
27+
return -1;
28+
}
29+
public static void main(String []args)
30+
{
31+
Scanner sc=new Scanner(System.in);
32+
int n,i;int p,f;
33+
n=sc.nextInt();
34+
int arr[]=new int[n];
35+
for(i=0;i<n;i++)
36+
arr[i]=sc.nextInt();
37+
System.out.println("Enter element to be searched");
38+
p=sc.nextInt();
39+
f=search(arr,p,0,arr.length-1);
40+
if(f==-1)
41+
System.out.println("undefined");
42+
else
43+
System.out.println(f);
44+
}
45+
}

day29/README.md

Lines changed: 46 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,51 @@ console.log (binarySearch ([1, 2, 3, 4, 5, 8, 9], 8));
4545
console.log (binarySearch ([1, 2, 3, 4, 5, 8, 9], 7));
4646
```
4747

48+
## Java Implementation
49+
50+
### [Solution](./Java/binarySearch.java)
51+
52+
```java
53+
/**
54+
* @date 29/01/19
55+
* @author SPREEHA DUTTA
56+
*/
57+
import java.util.*;
58+
public class binarySearch {
59+
public static int search(int []arr,int p,int l,int r)
60+
{
61+
int mid=0;
62+
if(r>=l)
63+
{
64+
mid=(l+r)/2;
65+
if(p==arr[mid])
66+
return mid;
67+
else if(p>arr[mid])
68+
return search(arr,p,mid+1,r);
69+
else
70+
return search(arr,p,l,mid-1);
71+
}
72+
return -1;
73+
}
74+
public static void main(String []args)
75+
{
76+
Scanner sc=new Scanner(System.in);
77+
int n,i;int p,f;
78+
n=sc.nextInt();
79+
int arr[]=new int[n];
80+
for(i=0;i<n;i++)
81+
arr[i]=sc.nextInt();
82+
System.out.println("Enter element to be searched");
83+
p=sc.nextInt();
84+
f=search(arr,p,0,arr.length-1);
85+
if(f==-1)
86+
System.out.println("undefined");
87+
else
88+
System.out.println(f);
89+
}
90+
}
91+
```
92+
4893
## C++ Implementation
4994

5095
### [Solution by @imkaka](./C++/binary_search.cpp)
@@ -106,4 +151,4 @@ int main(){
106151
cout << "Recursive: " << binary_search_rec(arr, 0, size-1, val) << endl;
107152
return 0;
108153
}
109-
```
154+
```

0 commit comments

Comments
 (0)