교수의 현장 알고리즘에 대한 정의가 있지만 이해할 수 없습니다.
인시 튜 알고리즘은 Θ (1) 메모리로 작동하는 알고리즘을 나타냅니다.
그게 무슨 뜻이야?
교수의 현장 알고리즘에 대한 정의가 있지만 이해할 수 없습니다.
인시 튜 알고리즘은 Θ (1) 메모리로 작동하는 알고리즘을 나타냅니다.
그게 무슨 뜻이야?
답변:
먼저 의미를 풀자 .
Big 및 big Θ 는 함수 클래스입니다. 이 형식 정의입니다 여기에 ,하지만이 질문의 목적을 위해, 우리는 함수라고 f는 에 O ( 1 ) 일정의가 있다면 C 곳, 모두를위한 X , F ( X ) ≤ C . 즉, f 는 일정한 함수만큼 빨리 자랍니다.
알고리즘 시간이나 공간 사용량을 설명 할 때 상수가 그보다 낮지 않기 때문에 Big- 는 상수 함수에 큰 의미가 없습니다. 그러나 그것이 의미하는 바를 설명하기 위해 , 모든 상수 c , d 가 있으면 모든 x 에 대해 d ≤ f ( x ) ≤ c 인 f ∈ Θ ( 1 ) 입니다. 즉, f 는 일정한 함수만큼, 최소한 빠르게, 그리고 최대한 빨리 자랍니다.
이제 이것이 메모리 사용량과 어떤 관련이 있습니까? 알고리즘 고려하십시오 . 입력 주어진 일부 (수학) 함수가 n은 , 당신의 알고리즘의 최대 메모리 사용량 제공 크기의 입력에 , n은 . 이 함수를 m e m 이라고합시다 .
이제 두 가지 개념을 결합했습니다. 알고리즘이 메모리를 사용하는 경우 메모리 사용량 함수는 Θ ( 1 ) 에 있습니다. 즉 , 어떤 입력에 대해서도 사용 된 메모리가 d 와 c 사이에 있도록 일부 d , c 가 존재합니다 .
즉, 알고리즘의 메모리 사용량이 입력에 관계없이 일정한 범위에 있음을 의미합니다.
일반적으로 메모리 함수는 입력을 알고리즘에 저장하는 데 사용되는 메모리를 고려하지 않습니다. 그렇지 않으면 메모리 사용이 항상 이상이 되기 때문 입니다.
알고리즘의 일정한 공간 복잡성
알고리즘이 사용하는 메모리 양은 입력과 무관합니다.
알고리즘은 고정 된 양의 공간을 사용하는 경우 일정한 공간 복잡성을 갖는다 고합니다. 변수 또는 정확히 10 개의 요소 배열 일 수 있습니다 .
그러나 In-situ 알고리즘은 입력 자체에서 의도 한 기능을 수행하므로 추가 공간이 거의 또는 전혀 필요하지 않습니다. 알고리즘이 실행될 때 일반적으로 입력이 출력에 의해 덮어 쓰기됩니다. ( REF )
인시 튜 알고리즘은 입력이 차지하는 공간을 고려하지 않고 추가 공간 만 고려하면서 공간 복잡성을 계산합니다.