컴퓨터 공학/알고리즘 16

👉 [번역] 객체 인식(Object Recognition) 이해 : 딥러닝 vs 머신러닝 방식

출처 : https://www.mathworks.com/solutions/image-video-processing/object-recognition.html 영상 내 물체를 식별하는 과정은 객체 검출(Object Detection)과 객체 인식(Object Recognition) 으로 크게 나눌 수 있다. 그 중 객체 인식에 대한 좋은 글이 있어 번역 및 정리를 하기 위해 가져왔다. 알고 있는 내용을 통해 직역했기 때문에 원본과 단어 선택에 있어서 느낌 차이가 있을 수 있다. What Is Object Recognition? Object recognition is a computer vision technique for identifying objects in images or videos. Object..

👉 [SQL] 기본적이고 자주 사용하는 SQL 문법 정리

Structured Query Language: SQL 데이터 베이스 질의 언어 무슨 프로젝트를 하던, DB는 빠질 수 없는 요소이다. 나 또한 그렇기에 자주 사용한다. 하지만 다른 일을 하다가 SQL 작성하려면 종종 까먹기 마련이었다. 기본적인 것만 이 기회에 정리하고자 한다. - INSERT : 데이터 입력 구문 INSERT INTO 테이블이름 (필드1, 필드2, ...) VALUES (value1, value2, ...); ex) INSERT INTO user (name, password) VALUES ("Park Boyoung", "asd123"); - UPDATE : 데이터 수정 구문 UPDATE 테이블이름 SET field1=value1, field2=value2 WHERE field3 = v..

백트래킹

백트래킹(Back-Tracking)? 트리 탐색 알고리즘의 일종이다. 거슬러 추적한다는 의미를 담고 있다. 이전 노드로 돌아가서 다시 다른 노드들을 탐색한다는 것. 깊이 우선 탐색 [Depth First Search] , 너비 우선 탐색 [Breadth First Search] , 최선 우선 탐색 [Best First Search] 로 나뉜다. DFS의 특징-깊이를 고려하는 문제인지 확인해야한다. 무한한 깊이일 경우 피해야 한다.-스택 오버플로를 조심해야 한다. 재귀 호출을 이용할 시, 너무 많이 시도할 경우 스택 오버 플로가 발생한다.-스택을 이용한 방법 / 재귀 호출을 이용한 방법으로 두가지로 구현이 가능하다. BFS의 특징-최단 거리 구하기 문제에서 사용하기 알맞다. 레벨별로 서치하기 때문이다.-큐..

BFS / DFS

DFS와 BFS는 대표적인 그래프 탐색 알고리즘이다. DFS는 깊이 우선 탐색(Depth-First Search)이라고 불리며, BFS는 너비 우선 탐색(Breadth-First Search)이라고 불린다. 이 두 알고리즘은 그래프에서 노드를 탐색하고 경로를 찾는 데 사용된다. DFS(Depth-First Search)는 그래프에서 깊이 방향으로 탐색하는 알고리즘이다. 시작 노드에서부터 한 방향으로 가능한 한 깊이 탐색을 진행하다가 더 이상 진행할 수 없게 되면, 다시 돌아와서 다른 방향의 노드를 탐색하는 방식이다. 이 알고리즘은 스택, 재귀 호출 등의 방법을 사용하여 구현한다. DFS는 주로 깊이 우선 탐색이 필요한 경우에 사용된다. 예를 들어, 미로 찾기, 트리 탐색, 그래프에서 사이클 찾기 등에서 ..

펜윅 트리

펜윅 트리는 세그먼트 트리에서 조금 더 발전한 형태(?)인 것 같다. 세그먼트 트리에서 우측 노드를 잘라내어 좌측 노드들로만 구성되어 있고 비트 연산으로 부분합을 구할 수 있다. 위의 트리 속 노드를 가지고 계산할때 한 비트씩 차이를 주면 값을 알 수 있기 때문이다. 자세한건 직접 해보면 앎. 어디에 쓰이나?- 부분합을 구할때 쓴다. 왜 쓰이나?- n부터 k까지의 부분합을 구할 시, 하나하나 구하게 되면 시간 복잡도가 O(n)이 된다. 그러나 트리를 이용하게 되면 O(logN) 형태가 된다. 큰 범위값을 구할때 적은 시간동안 해결하기 위함이다.