[이론] API 그리고 SDK 도대체 뭐가 다른거야!
·
개발
인턴생활을 하면서, 팀장님께 "API 만드는거 자신있습니다!"라고 외친적이 있다. 하지만 고민을 해보자... 대체 API는 무엇일까? 어떤 특정 열할을 해주는 모듈을 만드는 것? 클라이언트가 동작할 수 있도록 처리를 해주는 소프트웨어?! 대충은 알고 있으나, 매번 SDK와 혼란스러울 때가 있었다. 매번 검색을 해보지만, 매번 잊어버린다. 이번 기회로 제대로 기억을 해보자. 📌What is API? API(Application Programming Interface) 프로그램에서 사용할 수 있는 운영체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스이다. 즉, 어떤 기능을 제어 및 제공하는 인터페이스이다. 그리고 모듈화하여 누구나 쉽게 사용할 수 있도록 제공한다. ** RESTful ..
[이론] 이진탐색 (Binary Search) - c++
·
알고리즘 이론
이진탐색(Binary Search)란? 오름차순으로 정렬된 리스트에서 특정값을 찾는 알고리즘 오름차순으로 정렬된 리스트에서 중간 값(mid)을 선택하고 찾고자 하는 값(target)과 비교를 반복 때문에 정렬이 필수적 선형탐색보다 훨씬 빠르게 검색 가능(탐색 범위를 절반씩 줄여나감) 시간 복잡도 O(log N) 구현방법 1~100까지 오른차순으로 정렬된 카드 더미가 있다고 가정하자. 목표는 29를 찾는 것이다. i번째 카드는 c[i]로 나타내고, 목표 값(target)은 val로 표현하자. 결정 문제(Decision Problem, 답이 이분적일 경우)를 "c[i] >= val ?"로 설정하고 답은 i를 증가시키며 탐색을 시작한다. 그리고 v[i] >= val이 되는 지점이 나타나면 탐색을 완료합니다. ..