본문 바로가기

전체 글140

알고리즘 -BFS(Breadth First Search) 그래프를 탐색하는 방법중 하나. 최단거리, 최소비용등 최솟값을 구하는 문제에 적용할 수 있는 방법. 그래프 정점 사이의 거리가 1일때만 가능. 0. 시작할 정점을 저장함. 1. 저장된 정점에서 첫번째 정점를 선택. 저장에서 제거 2. 제거한 정점에서 할 작업 선택. 3. 제거한 정점과 연결된 정점중 방문하지 않은 모든 정점 저장. 4. 저장한 정점이 모든 노드가 삭제 될때까지 2~3 반복. 저장할 자료구조는 큐로 하는것이 편함.. 앞에서부터 탐색해나가야되기 때문. FIFO 구조면 저장된 정점을 앞에서 부터 하나씩 볼수 있기 때문. 2020. 3. 5.
알고리즘 - 분할 정복(Divide and Conquer) 전체의 큰 문제를 서로 다른 작은 문제로 나누어 풀고 합쳐서 전체 문제의 답을 구하는 알고리즘. 동적 계획법과 같아보이지만, 분할 정복은 "문제의 영역이 겹치지 않도록 나눈" 작은 문제로 푼다는 점이다. 1. 문제를 나눈다. 겹치지 않고 빠지는 경우가 없도록 나눈다. 2. 더이상 나눌수 없을때까지 1을 반복. 3. 분할이 끝나면 작은 문제들을 푼다. 4. 푼 문제들을 합쳐간다. 5. 전체 문제가 될때까지 4를 반복. 대표적인 문제 합병 정렬, a^n 구하기. a^n 구하기 1. n이 홀수일때 a^n을 a*a^(n-1) 로 나눈다. 2. n이 짝수일때 a^n을 a^(n/2)*a^(n/2) 로 나눈다. 더 나눌수 없을떄 까지 나누어 놓고 계산해서 점점 합쳐간다. 2020. 3. 5.
Unreal Engine 4 - UE_LOG 에디터 상 출력 로그창에 로그 남기는 방법 기본 형식 UE_LOG(LogTemp, Warning, TEXT("Log Message")); 매개변수 Log Category : 로그를 구분할 카테고리 설정. 90종정도 있음. 기본으로 LogTemp 씀. 커스텀 로그 프로젝트 이름.h DECLARE_LOG_CATEGORY_EXTERN(카테고리 이름, 수준, All); 프로젝트 이름.cpp DEFINE_LOG_CATEGORY(카테고리 이름); Log Level : 로그의 수준을 설정해 중단이나 출력시 색을 구분함. Fatal : 수준이 제일 높아 출력되면 중단됨. Error : 오류 수준으로 빨간 색으로 출력. Warning : 경고 수준으로 노란색 출력. Display : 일반 수준으로 평범하게 출력. Log.. 2020. 3. 4.
알고리즘 - 이진 탐색(Binary Search) 이미 정렬된 배열 or 리스트에 대해 특정 원소가 포함되어 있는지 판단하는 알고리즘. 전체 범위에서 중심 값을 이용해 판단 기준을 체크함. ex) 오름차순 정렬일때 해당값이 중심값보다 크면 중심값 왼쪽은 무시. 중심값보다 작으면 오른쪽 무시. 범위 줄임. 줄인 범위의 중심값. 다시 조건 검색으로 원소 있으면 true 없으면 false 이미 정렬이 된 배열에 대해서는 O(logN) 정렬이 안된 배열에 대해서는 O(NlongN) 이 필요. 2020. 3. 4.