알고리즘의 복잡성 분석을위한 패러다임


16

최악의 경우와 평균적인 경우 분석은 알고리즘의 복잡성에 대한 잘 알려진 방법입니다. 최근에 심화 된 경우에 왜 최악의 경우 지수가되는 일부 알고리즘이 실제로 잘 작동하는지 설명하는 또 다른 패러다임으로 스무딩 분석이 등장했습니다.

내 질문은-알고리즘의 복잡성을 측정하는 다른 패러다임이 있습니까? 특히 최악의 복잡성이 나쁜 일부 알고리즘이 실제로 잘 작동하는 이유를 설명하려는 알고리즘에 관심이 있습니다.

답변:


21

최악의 경우 분석에 유용한 변형도 있습니다. 아마도 가장 유명한 것은 매개 변수화 된 복잡성 일 것입니다. 여기서는 "2 차원"측정 값을 고려합니다. 일반적인 입력 길이 및 일부 추가 음이 아닌 정수 k , 매개 변수. 알고리즘이 최악의 경우 ( nk 의 모든 값에 대해) 끔찍하게 실행될 수 있지만 응용 프로그램의 모든 경우를 해결 해야하는 경우 일 수 있습니다. 이 매개 변수 k는 낮으므로 알고리즘이 잘 실행됩니다. 그런 경우에.nknkk

10영형(2케이(|이자형|+|V|))

[1] R. Niedermeier, 고정 매개 변수 알고리즘 초대. 2006 년 옥스포드 옥스포드 대학 출판부 (Oxford University Press)


15

복잡한 작업이 있습니다. 최악의 경우 일부 작업에 비용이 많이들 수 있지만 많은 작업을 고려할 경우 평균 작업 당 비용이 좋습니다.

전형적인 예는 데이터 요소가 가득 차면 모든 요소를 ​​일부 스토리지에 복사하여 비워지는 데이터 구조입니다. 복사 작업은 비용이 많이 들지만 자주 발생하지는 않습니다. 데이터 구조에 충분한 요소를 삽입해야합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.