Skip to content

Commit f6af5fa

Browse files
authored
Add guessNumber function using binary search
Implement binary search to guess the number.
1 parent 9e675c0 commit f6af5fa

1 file changed

Lines changed: 30 additions & 0 deletions

File tree

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
/**
2+
* Forward declaration of guess API.
3+
* @param {number} num your guess
4+
* @return -1 if num is higher than the picked number
5+
* 1 if num is lower than the picked number
6+
* otherwise return 0
7+
* var guess = function(num) {}
8+
*/
9+
10+
/**
11+
* @param {number} n
12+
* @return {number}
13+
*/
14+
var guessNumber = function(n) {
15+
// 이진탐색
16+
// 시간복잡도: O(log n)
17+
let start = 1;
18+
let end = n;
19+
while (start <= end) {
20+
let mid = Math.floor((start + end)/2);
21+
if (guess(mid) == 1){
22+
start = mid+1;
23+
} else if (guess(mid) == -1){
24+
end = mid-1;
25+
} else {
26+
return mid;
27+
break;
28+
}
29+
}
30+
};

0 commit comments

Comments
 (0)