본문 바로가기
반응형
[C++로 배우는 알고리즘과 자료구조 심화] Day 21: 문자열 동적 계획법 (Edit Distance, Longest Common Subsequence) 문자열 동적 계획법문자열 관련 문제는 많은 응용 분야에서 중요합니다. 오늘은 두 가지 주요 문제인 편집 거리(Edit Distance)와 최장 공통 부분 수열(Longest Common Subsequence, LCS)에 대해 학습하겠습니다.편집 거리 (Edit Distance)편집 거리(Edit Distance)는 두 문자열을 같게 만들기 위해 필요한 최소 편집 연산 횟수를 의미합니다. 가능한 편집 연산은 삽입, 삭제, 교체입니다.문제 정의두 문자열 ( s1 )과 ( s2 )가 주어졌을 때, ( s1 )을 ( s2 )로 변환하는 데 필요한 최소 편집 연산 횟수를 계산합니다.편집 거리 구현다음은 C++로 편집 거리 문제를 해결하는 예제입니다.#include #include #include #include .. 2024. 8. 1.
[C++ 마스터] Day 8: 배열과 문자열 배열 (Arrays)배열은 동일한 데이터 타입의 집합을 저장할 수 있는 연속된 메모리 블록입니다. 배열의 각 요소는 인덱스를 사용하여 접근할 수 있습니다. 1. 배열 선언과 초기화배열을 선언하고 초기화하는 방법은 다음과 같습니다:int numbers[5]; // 5개의 정수형 요소를 가지는 배열 선언int numbers[5] = {1, 2, 3, 4, 5}; // 배열 초기화 2. 배열 요소 접근배열의 각 요소는 인덱스를 사용하여 접근할 수 있습니다. 배열의 인덱스는 0부터 시작합니다.cout  3. 배열의 크기배열의 크기는 sizeof 연산자를 사용하여 구할 수 있습니다.int size = sizeof(numbers) / sizeof(numbers[0]);cout  4. 다차원 배열다차원 배열은 배열의.. 2024. 8. 1.
[C++로 배우는 알고리즘과 자료구조] Day 2: 배열과 문자열 배열 (Array)배열은 동일한 타입의 요소들이 연속적으로 저장된 자료구조입니다. 배열은 고정된 크기를 가지며, 인덱스를 사용하여 요소에 접근할 수 있습니다. 배열은 C++에서 가장 기본적인 자료구조 중 하나입니다.배열의 특징:고정된 크기: 배열의 크기는 생성 시 결정되며, 변경할 수 없습니다.빠른 접근 속도: 인덱스를 사용하여 O(1) 시간 복잡도로 요소에 접근할 수 있습니다.연속된 메모리 공간: 배열은 연속된 메모리 공간에 저장됩니다.배열 예제#include int main() { // 배열 선언 및 초기화 int arr[5] = {1, 2, 3, 4, 5}; // 배열의 크기 int size = sizeof(arr) / sizeof(arr[0]); // 배열의 요소 출력 .. 2024. 8. 1.
반응형