[알고리즘] 스트링 알고리즘
스트링 알고리즘 스트링(string) : 문자가 연속적으로 나열된 문자열 (ex. ATATCGCCCACGTAT) 알파벳(∑) : 스트링에 사용되는 문자들의 집합 (ex. ∑={A,C,G,T}) 스트링 매칭, 스트링 압축 등의 문제를 해결하는 알고리즘 스트링 매칭 텍스트에서 패턴이 나타나는 위치를 찾는 것 텍스트의 길이 n은...
스트링 알고리즘 스트링(string) : 문자가 연속적으로 나열된 문자열 (ex. ATATCGCCCACGTAT) 알파벳(∑) : 스트링에 사용되는 문자들의 집합 (ex. ∑={A,C,G,T}) 스트링 매칭, 스트링 압축 등의 문제를 해결하는 알고리즘 스트링 매칭 텍스트에서 패턴이 나타나는 위치를 찾는 것 텍스트의 길이 n은...
최단 경로 두 정점 u와 v간의 최단 경로 : 가중 그래프에서 두 정점 u에서 v를 연결하는 경로 중 간선의 가중치의 합이 가장 작은 경로 최단 경로 문제의 유형 단일 출발점 최단 경로 문제 : 데이크스트라 알고리즘, 벨만-포드 알고리즘 모든 쌍 최단 경로 문제 : 플로이드 알고리즘 단일 출발...
그래프 그래프 G = (V,E) 정점의 집합 V와 간선의 집합 E로 구성된 비선형 자료구조 방향성 여부에 따라 무방향 그래프와 방향 그래프로 구분된다. 간선에 비용이나 시간과 같은 의미를 갖는 가중치를 부여한 그래프를 가중 그래프라 한다. 정점 u에서 정점 v 사이의 간선을 무방향 그래프에서는 (u,v)로 표현하며, 방향 그래프에...
해시 테이블 각 위치(슬롯)마다 주소가 부여되어 있는 저장공간으로 기본적으로 배열의 형태로 볼 수 있다. 해싱 : 탐색 키 값을 활용하여 해시 테이블의 주소를 계산하는 방법 해시 함수 키 값을 테이블의 주소로 변환하는 함수 서로 다른 키 값이 해시 테이블의 같은 주소로 변환되는 충돌이 적게 발생되도록 해야 한다. 정수를 위...
일반 탐색 순차 탐색 배열을 처음부터 순차적으로 찾는 방식 삽입 : 리스트의 맨 뒤에 원소를 추가 삭제 : 탐색으로 원소의 위치를 찾은 후 배열에서 삭제하고, 배열의 마지막 원소를 삭제된 자리로 이동한다. 정렬되지 않고 크기가 작은 데이터에 적합하다. 시간복잡도 탐색, 삭제 : O(n) 삽입 : O(1) 이진 탐색...
신경회로망 두뇌 속의 신경 구조 약 10~100억 개의 신경세포인 뉴런이 있고, 각 신경세포는 1000~10만 개의 다른 신경세포와 신경연접(시냅스)를 통해 연결된다. 신경세포는 매우 간단한 처리만 담당 신경연접을 지나가는 신호는 신경연접의 특성에 따라 증폭되거나 감쇄되어 전달된다. 컴퓨터와 신경계통의 처리 방법 특성 비교 ...
interseptor interseptor를 통해 api 응답에 대해 공통으로 처리하는 로직을 적용할 수 있다. RTK에서 interseptor를 적용하는 방법에는 크게 2가지가 있다. baseQuery 커스텀 baseQuery를 생성하여 createApi에 적용한다. 쿼리를 직접 호출하여 응답값을 얻을 수 있다. import { creat...
SELECT SELECT [DISTINCT] 컬럼1, 컬럼2, ..., 컬럼X [FROM 테이블1, [INNER JOIN|OUTER JOIN|CROSS JOIN 테이블2 INNER JOIN|OUTER JOIN|CROSS JOIN ON 조인 조건식1 테이블3 INNER JOIN|O...
데이터 정의 언어 DDL(Data Definition Language) 종류와 기능 종류 적용 기능 CREATE DATABASE 데이터베이스 생성 SCHEAMA 스키마 생성 ...
분할 정복 알고리즘 주어진 문제를 독립적인 소문제로 분할하여 해결하는 방법이다. 순환할 때마다 분할, 정복, 결합 세 단계를 거친다. 퀵 정렬 분할 정복 방법이 적용된 알고리즘이다. (결합 단계는 필요하지 않다.) 제자리 정렬 알고리즘이다. 피벗(pivot)을 기준으로 배열을 피벗보다 작은 배열과 피벗보다 큰 배열로 분할하...