Skip to content

Commit 534b054

Browse files
authored
Merge pull request #84 from rmnbrgr/add-minMaxSearch
add minMaxSearch
2 parents c856a8e + 817449d commit 534b054

File tree

1 file changed

+53
-0
lines changed

1 file changed

+53
-0
lines changed

searches/minMaxSearch.java

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
public class MinMaxSearch {
2+
3+
public MinMaxSearch(){
4+
5+
}
6+
7+
8+
public int[] searchMinMax(int[] in) {
9+
int n = in.length;
10+
int j = 0;
11+
int min;
12+
int max;
13+
int count = 0;
14+
if (n % 2 == 1) {
15+
j = j - 1;
16+
min = in[0];
17+
max = in[0];
18+
count = count + 1;
19+
} else if (in[0] < in[1]) {
20+
min = in[0];
21+
max = in[1];
22+
count = count + 2;
23+
} else {
24+
min = in[1];
25+
max = in[0];
26+
count = count + 2;
27+
}
28+
for (int i = 1; i <= ((n - 1) / 2); i++) {
29+
if (in[j + 2 * i] <= in[j + 2 * i + 1]) {
30+
if (in[j + 2 * i] < min) {
31+
min = in[j + 2 * i];
32+
}
33+
if (in[j + 2 * i + 1] > max) {
34+
max = in[j + 2 * i + 1];
35+
}
36+
count = count + 3;
37+
} else {
38+
if (in[j + 2 * i + 1] < min) {
39+
min = in[j + 2 * i + 1];
40+
}
41+
if (in[j + 2 * i] > max) {
42+
max = in[j + 2 * i];
43+
}
44+
count = count + 3;
45+
}
46+
}
47+
48+
int[] MinMaxC = { min, max, count };
49+
return MinMaxC;
50+
51+
}
52+
53+
}

0 commit comments

Comments
 (0)