최악의 경우 복잡성

Worst-case complexity

컴퓨터 과학(특히 계산 복잡도 이론)에서 최악의 경우, 알고리즘이 임의의 크기(일반적으로 점근 표기법에서 n으로 표시됨)의 입력을 필요로 하는 자원(예를 들어 실행 시간, 메모리)을 측정합니다.알고리즘에 필요한 자원의 상한을 지정합니다.

실행 시간의 경우, 최악의 시간 복잡도는 크기 n의 입력이 주어진 알고리즘에 의해 실행되는 가장 긴 실행 시간을 나타내므로 알고리즘이 지정된 시간 내에 완료됨을 보증합니다.최악의 경우 복잡도의 증가 순서(예: 선형, 로그)는 일반적으로 두 알고리즘의 효율성을 비교하는 데 사용된다.

알고리즘의 최악의 경우 복잡도는 알고리즘이 랜덤 입력에 사용하는 자원의 양을 측정하는 평균적인 경우 복잡도와 대조해야 합니다.

정의.

연산모델과 각 s에서 정지하는 A(\ {에서 { N(\t_{\ {A\}^{\star})의 시간과 같습니다 입력 대해 (s) \ t _ { \ { A} ( s ts exactly exactly exactly exactly exactly exactly exactly exactly exactly exactly exactly exactly exactly exactly exactly exactly exactly exactly exactly exactly exactly exactly exactly exactly exactly for for for for for for for for for for for for \ mathsf { } 후에합니다.

우리는 보통 다른 입력 길이에 대한 시간 복잡도의 의존성에 관심이 있고 용어를 남용하기 때문에 시간 복잡도는 최대 복잡도에 의해 정의된 t : {\ \으로 참조되기도 한다.

길이 또는 크기 n\ nn

공간 복잡성, 무작위성 복잡성 등에 대해서도 유사한 정의를 내릴 수 있다.

말투

t{\(는) Big-O 표기로 주어지며, 이는 t의 형태로 증가율을 { g 의미:

  • 다음과 같은 양의 MM})과 존재합니다.

자주 사용하는 표현은 다음과 같습니다.

  • 알고리즘 style {A (n가 최악입니다.\ n

또는 한정:

  • display\{A n))}입니다.

랜덤 액세스 머신에서에 대해 정렬을 실행하는 것을 검토합니다.알고리즘의 최선의 경우는 번호가 이미 정렬되어 있는 경우입니다.이 경우 작업을 수행하려면 (n )\ O ( )스텝이 합니다.단, 알고리즘의 최악의 경우 입력은 숫자가 역순으로 정렬되고 O 2 O 스텝이 하기 때문에 삽입 정렬의 최악의 시간 복잡도는 2)\O(2입니다.

「 」를 참조해 주세요.

레퍼런스

  • 토마스 H. 코먼, 찰스 E. 리저슨, 로널드 L. 리베스트, 클리포드 스타인.알고리즘 소개, 제2판MIT Press and McGraw-Hill, 2001. ISBN0-262-03293-7.2.2장: 알고리즘 분석, 페이지 25-27.
  • Oded Goldreich.계산의 복잡성: 개념적 관점.케임브리지 대학 출판부, 2008.ISBN 0-521-88473-X, 페이지 32.