반응형

공부/알고리즘 3

빅오 표기법(big-O natation)이란?

1. 빅오 표기법이란? 빅 O 표기법이라고도 하는 점근 표기법은 컴퓨터 과학과 수학에서 알고리즘의 효율성과 성능 특성을 설명하기 위해 사용되는 수학적 표기법입니다. 입력 크기가 증가함에 따라 알고리즘의 실행 시간 또는 공간 요구 사항이 어떻게 증가하는지 간결하게 분석할 수 있는 방법을 제공합니다. 점근 표기법의 주요 목적은 입력 크기와 관련하여 함수의 성장률을 표현하는 것입니다. 2. 빅오 표기법의 종류 가장 일반적인 점근 표기법은 빅오 표기법, 리틀오 표기법, 세타 표기법입니다. 1. Big-O 표기법은 함수의 성장률의 상한을 나타냅니다. 예를 들어 함수 f(n) = n^2 + n은 O(n^2)의 큰-O를 가지며, 이는 n^2에 상수를 더한 비율로 증가한다는 의미입니다. 2. 리틀오 표기법은 함수 성장..

공부/알고리즘 2023.06.11

퀵 정렬(Quick sort)이란?

1. 퀵 정렬(Quick sort)이란? 퀵 정렬은 피벗 요소를 기준으로 배열을 두 개의 작은 하위 배열로 나눈 다음 각 하위 배열을 재귀적으로 정렬하는 방식으로 작동하는 널리 사용되는 정렬 알고리즘입니다. 이 알고리즘은 효율성이 뛰어난 것으로 알려져 있으며 대규모 데이터 세트에 자주 사용됩니다. 2. 퀵 정렬(Quick sort)의 작동 방식 퀵 정렬 알고리즘의 작동 방식은 다음과 같습니다: 1. 배열에서 피벗 요소를 선택합니다. 피벗은 모든 요소가 될 수 있지만 배열의 첫 번째 또는 마지막 요소로 선택되는 경우가 많습니다. 2. 피벗보다 작은 요소는 모두 피벗의 왼쪽에, 피벗보다 큰 요소는 모두 피벗의 오른쪽에 위치하도록 피벗을 중심으로 배열을 분할합니다. 3. 전체 배열이 정렬될 때까지 위의 두 단..

공부/알고리즘 2023.04.07

정렬 알고리즘(Sorting algorithm)이란?

1. 정렬이란? 정렬은 데이터 요소 모음을 특정 순서(일반적으로 오름차순 또는 내림차순)로 배열하는 기본적인 알고리즘 문제입니다. 정렬 알고리즘은 검색 및 검색, 데이터 분석, 데이터베이스 관리 등 다양한 애플리케이션에서 사용됩니다. 데이터를 정렬하는 데 사용할 수 있는 알고리즘은 여러 가지가 있으며, 각 알고리즘에는 고유한 장단점이 있습니다. 가장 일반적으로 사용되는 정렬 알고리즘은 다음과 같습니다: 2. 정렬 알고리즘의 종류 버블 정렬(Bubble sort): 목록을 반복적으로 통과하면서 인접한 요소를 비교하고 순서가 잘못된 경우 교체하는 간단한 정렬 알고리즘입니다. 목록이 정렬될 때까지 목록을 통과하는 과정이 반복됩니다. 선택 정렬(Selection sort): 목록의 정렬되지 않은 부분에서 최소 ..

공부/알고리즘 2023.04.07
반응형