본문 바로가기
알고리즘

recursion - 순차탐색, 이진트리탐색

by 멋진 개구리 2020. 6. 9.
반응형

명시적 설계

1) 순차 탐색

int search (int [] data, int begin, int end, int target){
	if(begin > end){
    	return -1;
   	}else if(target == data[begin]){
    	return begin;
    }else{
    	return search(data, begin+1, end, target);
    }
}

2) 이진트리 탐색

public static int binarySearch(String[] items, String target, int begin, int end){
	if(begin > end)
    	return -1;
    else{
    	int middle = (begin+end)/2;
    	int compResult = target.compareTo(items[middle]);
        if(compResult==0)
        	return middle ;
        else if (compResult < 0 )
        	return binarySearch(items, target, begin, middle-1);
        else
        	return binarySearch(items, target, middle+1, end);
     	}
}        
반응형

'알고리즘' 카테고리의 다른 글

recursion으로 미로찾기  (0) 2020.06.23
최댓값 구하는 알고리즘_java  (0) 2020.06.16
순환함수(재귀함수, Recursion)  (0) 2020.06.04

댓글