본문 바로가기

전체 글

(96)
[알고리즘] 완전탐색 DFS & BFS 깊이 우선 탐색 (DFS) DFS는 깊이 우선 탐색이라고 부르며 그래프에서 깊은 부분을 우선적으로 탐색하는 알고리즘이다. 깊이 우선 탐색(DFS)은 스택 자료구조(또는 재귀 함수)를 이용한다. 완전탐색 방법 중 하나로 모든 경우의 수를 확인해야 할 경우 사용한다. 예를 들어 모든 조합을 확인하여 특정 조합의 개수를 구하는 문제를 풀 때 사용할 수 있다. DFS 탐색 방법 1번 노드부터 시작 접근하지 않은 노드가 있다면 번호가 낮은 노드부터 접근하여 PUSH PUSH(1) -> PUSH(2) -> PUSH(7) -> PUSH(6) Stack = [1, 2, 7, 6] 다음 노드가 없을 경우 접근하지 않은 노드가 연결된 노드가 나올 때까지 POP POP(6) Stack = [1, 2, 7] 이 과정을 반복하..
[Kakao Api] 키 해시 생성 및 플랫폼 등록 윈도우 기준으로 작성 된 방법이므로, Mac 등 다른 운영체제의 방법과는 상이할 수 있습니다. 1. Kakao Developer에 애플리케이션 추가 https://developers.kakao.com/ Kakao Developers 카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다. developers.kakao.com 사이트 상단의 "내 애플리케이션"을 클릭 후 애플리케이션을 추가해준다. 2. 키 해시 생성 준비 과정 카카오 API에서는 사용자 애플리케이션에 등록 된 키 해시를 통해 인증을 하고, API를 호출할 수 있기 때문에 키 해시를 생성 후 등록하지 않으면 카카오 API를 사용할 수 없다. 2-1. open..
[알고리즘] 이진 탐색 이진탐색이란? 정렬되어 있는 리스트에서 탐색 범위를 절반씩 좁혀가며 데이터를 탐색하는 방법이다. 쉽게 말해 up&down 게임과 유사하다고 볼 수 있다. 시작점, 중간점, 끝점을 이용하여 탐색 범위를 설정하는데 탐색할 숫자가 중간점보다 크다면, 중간점보다 작은 수들은 배척시킴으로써 탐색 범위를 줄여나간다. 예제 찾고자 하는 수가 14일 때 - 중간점이 2개일 경우 둘 중 아무거나 해도 상관 없다. 1. 찾고자 하는 수와 중간점을 비교한다. 2. 찾고자 하는 수(14)가 중간점보다 작다면 중간점 아래를, 높다면 중간점 위의 숫자들을 제거해준다. 3. 찾고자 하는 수(14)가 중간점보다 크기 때문에 중간점보다 작은 수들을 제외하면 아래와 같이 남게 된다. 과정 반복 중간점이 찾고자 하는 숫자와 같다면 종료한..