| 일 | 월 | 화 | 수 | 목 | 금 | 토 | 
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 | 
| 12 | 13 | 14 | 15 | 16 | 17 | 18 | 
| 19 | 20 | 21 | 22 | 23 | 24 | 25 | 
| 26 | 27 | 28 | 29 | 30 | 31 | 
													Tags
													
											
												
												- 비트코인
- ios
- POS
- DPOS
- DEFI
- dsYM
- Xcode
- .dsym
- Blockchain
- Mining
- Report
- 이더리움
- view 이동
- PBFT
- 프로그래머스
- pow
- Algorithm
- 분산원장
- 암호화폐
- ethereum
- reentrancy
- Crash
- 블록체인 기술
- solidity
- viewcontroller
- 알고리즘
- 재진입공격
- External Call
- 백준
- 블록체인
													Archives
													
											
												
												- Today
- Total
개발하기좋은날
binarySearch 본문
반응형
    
    
    
  오름 차순 정렬된 정수의 배열에서 target을 찾는 문제
const binarySearch = function (arr, target) {
  
    var low = 0;
    var high = arr.length-1;
    var flag = true;
    var result = -1; //결과 
    
    while(flag == true)
    {
        var fv = Math.floor((low+high)/2); // 기준점 
        
        if(arr[fv] <= target && target <= arr[high]) // 피벗 기준 오른쪽에 있을떄  
            low = fv;        
        else if(arr[low] <= target && target <= arr[fv]) // 피벗 기준 왼쪽 
            high = fv;
        else
            flag = false;
        
        if((high-low) == 1)
        {
            result = target == arr[low] ? low : result;
            result = target == arr[high] ? high : result;
            flag = false;
        }
    }
    return result;
};
반응형
    
    
    
  'Algorithm' 카테고리의 다른 글
| BFS(Breadth-First Search) 알고리즘 (1) | 2022.07.05 | 
|---|---|
| BFS를 이용한 primPassword 찾기 (0) | 2022.07.05 | 
| largestProductOfThree (1) | 2022.06.02 | 
| treeDFS (0) | 2022.06.02 | 
| Bubble Sort (3) | 2022.05.25 | 
			  Comments
			
		
	
               
           
					
					
					
					
					
					
				