조회 수 947 추천 수 0 댓글 0
Atachment
첨부 '1'
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

이진 탐색에 대한 두 가지 코드.


# 실행 조건

- 유일한 값들이어야 함 (중복x).

- 오름차순 정렬 후 실행해야 함.


# 구현 방식

- 재귀함수 (bsearch_recursive)

- while 반복문 (bsearch_loop)


#include <stdio.h>
#include "bsearch.c"

void bbsort(int *arr, int length);
int bsearch_recursive(int *arr, int begin, int end, int target);
int bsearch_loop(int *arr, int target, int length);

int main( )
{
    int arr[] = {11, 9, 1, 5, 15, 3, 7, 13};
    int target = 7;
    int result;
    int length;
    
    length = sizeof(arr)/sizeof(int);
    
    bbsort(arr, length);
    
    //By Recursive
    result = bsearch_recursive(arr, 0, length-1, target);
    
    //By Loop
    result = bsearch_loop(arr, length, target);
    
    if(result == -1)
    {
        printf("Not Found.
");
    }
    else
    {
        for( int i=0 ; i<length ; ++i )
        {
            printf( "%d ", arr[i] );
        }
        printf("
Found Index :  %d.
", result);
    }
    
    return 0;
}

?

  1. [linux] CentOS Apache 웹서버에 HTTPS 적용

  2. [js] e.stopPropagation() VS e.preventDefault ()

  3. 사이버보안실무 수업 메모

  4. [ios] URL 랜딩 속도(OpenURL 10초 정지되는) 이슈

  5. [ios] Thread Loop 내에서 UI 업데이트 방법

  6. [ios] 문자열로 함수 실행하기 (eval 함수처럼)

  7. [macos] How to Fix ‘You Shut Down Your Computer Because of a Problem’

  8. [io] Apple Watch, Today Extension 앱ID 설정

  9. [ios] NSString, RegularExpression Find/Replace

  10. [android] 초간단 얼럿 (AlertDialog)

  11. [android] Android N requires the IDE to be running with Java 1.8 or later 오류

  12. [ios] iOS 앱 아이콘을 만드는 유틸

  13. Aspect Oriented Programming in Objective-C

  14. [git] 쉬운 버전관리 Git 설명

  15. [c] 이진 탐색 두 가지 코드 (재귀/반복)

  16. [android] N-Puzzle 게임

Board Pagination Prev 1 3 4 5 6 7 ... 74 Next
/ 74