SlideShare a Scribd company logo
1 of 18
1.2.11.1  O표기법 아꿈사 발표자 : 유유
목차 점근 공식 (Asymptotic Formula) 알고리즘 성능 분석 단방향 상등 (One-Way Equality) O(Big-O), Ω(Big-Omega), Θ(Big-Theta) 표기법 0 보다 큰 정수 n 0 에 가까운 복소변수z 일부 무한급수
점근 공식 (Asymptotic Formula) ‘어떠한 수량을 다른 것과 비교하기 위해, 그 수량을 정확하게 측정하는 것이 아니라 근사적으로 알고 싶은 경우’에 사용하는 방법이다. 간략화를 통해서 세부적인 정보를 숨기고 근사를 다룰 때 도움이 된다. 정확히 알려지지 않은 수량을 나타낸다.
알고리즘 성능 분석 시간 복잡도 분석 (수행 시간 분석) 알고리즘의 연산의 횟수(입력의 개수 (𝑛 ) 의 함수)를 측정하여 비교 점근적 표현, 점근적 복잡도 연산의 횟수를𝑛 이라고 하고 시간 복잡도를 표현할 때𝑛 이 무한히 큰 경우로 국한시킨다. 입력 크기(𝑛 )을 무한히 크다고 가정한 후함수 값을 비교해 보면log𝑛<𝑛<𝑛log𝑛<𝑛2<𝑛3 이다. 따라서log𝑛의 복잡도를 가진 알고리즘이다른 알고리즘에 비해 효율성이 좋다고할 수 있다.  
단방향 상등 (One-Way Equality) 항상 등식의 우변이 좌변보다 더 자세한 정보를 제공하지 않는다 즉, 우변은 항상 좌변보다 조악한 버전이다. 12𝑛2+𝑛=𝑂𝑛2 은가능하나 𝑂𝑛2= 12𝑛2+𝑛 은 절대로 불가능하다.  
O(Big-O), Ω(Big-Omega), Θ(Big-Theta) 표기법 O(Big-O)표기법 상한선 표기법 𝑔𝑛≥𝑂𝑓𝑛 (0<𝑛 정수)  𝑂(𝑓𝑛)이 나타내는 수를 𝑥𝑛이라고 할 때, 모든 정수 𝑛0≤𝑛에대해서 𝑥𝑛≤𝑀𝑓𝑛 을 만족하는 양의 정수 𝑀과 𝑛0이 존재한다. Ω(Big-Omega) 표기법 하한선 표기법 𝑔𝑛≤Ω𝑓𝑛 (0<𝑛 정수) Ω(𝑓𝑛)이 나타내는 수를 𝑥𝑛이라고 할 때, 모든 정수 𝑛0≤𝑛에대해서 𝐿𝑓𝑛≤𝑥𝑛을 만족하는 양의 정수 𝐿과 𝑛0이 존재한다. Θ(Big-Theta) 표기법 𝑔𝑛=Θ𝑓𝑛⇔𝑔𝑛=𝑂𝑓𝑛 이고 𝑔𝑛=Ω𝑓𝑛 (0<𝑛 정수)  
연습문제 13 다음을 증명 또는 반증하라.오직 𝑓𝑛=𝑂𝑔𝑛 일 때에만 𝑔𝑛=Ω𝑓𝑛 이다. 𝑓𝑛=𝑂𝑔𝑛 0<𝑛 정수,모든 정수 𝑛0≤𝑛일 때𝑓𝑛≤𝑀𝑔𝑛을 만족하는 양의 정수 𝑀과 𝑛0이 존재한다. 𝑔𝑛=Ω𝑓𝑛0<𝑛 정수,모든 정수 𝑛0≤𝑛일 때𝐿𝑓𝑛≤𝑔𝑛을 만족하는 양의 정수 𝐿과 𝑛0이 존재한다. 위의 정의를 통해서 𝑓𝑛≤𝑀𝑔𝑛 , 𝐿𝑓𝑛≤𝑔𝑛 를 통해서 𝐿=1𝑀 인 관계를알 수 있다.  
예를 들어양의 정수 𝑛->∞, 𝑔𝑛=𝑛 이면 2𝑛=𝑂𝑔𝑛 이 되고 𝑛2=Ω𝑔𝑛 이 된다. 이 때 𝐿=1𝑀  관계에서는 𝑓𝑛=𝑂𝑔𝑛 인 경우에 𝑔𝑛=Ω𝑓𝑛 가 항상 참이 된다.  
위의 식을 통해서 다음과 같은 사실을 도출해 낼 수 있다. O(Big-O)표기법은 상한선에 대해서는 항상 참이다. 즉, 12+22+⋯+𝑛2=𝑂(𝑛2) 은 상한선이 아니기 때문에 거짓이다.   0 보다 큰 정수 n
𝑃𝑛=𝑎0+𝑎1𝑛+⋯+𝑎𝑚𝑛𝑚이 𝑚이하 차수의 임의의 다항식이면 𝑃𝑛=𝑂(𝑛𝑚) 에대한 증명 1≤𝑛정수 일 때 𝑀=𝑎0+𝑎1+⋯+𝑎𝑚, 𝑛0=1 (𝑛0≤𝑛)로 할 수 있다.  
O표기법을 사용할 때 가능한 연산들 O표기법은 n의 차수가 가장 큰 항이 가장 큰 영향을 미친다.
0 에 가까운 복소변수z 복소변수 𝑧 의 함수들에서, 𝑧 가 0 에 가까울 때는 자주 쓰인다. 𝑂𝑓𝑧는 𝑧<𝑟일때𝑔(𝑧)≤𝑀𝑓(𝑧)를 만족하는 임의의 수량을 나타낸다. 작은 복소변수𝑧의함수를 가리킨다. 𝑀, 𝑟(실수) 은미지정된 상수이다. 𝑧=𝑧0에 수렴하는 무한 멱급수 함수에서𝑧<𝑧0일때에는𝑘≥0𝑎𝑘𝑧𝑘도 항상 수렴한다. 𝑧0≠0이면                                                      이다. O표기법에서는 상한은 항상 참이므로 𝑂𝑧𝑚+1=𝑎𝑚+1+𝑎𝑚+2𝑧+⋯𝑧𝑚+1으로 생각할 수 있다. 𝑧≤𝑟<𝑧0 이면 그 상계가 𝑎𝑚+1+𝑎𝑚+2𝑟+𝑎𝑚+3𝑟2+⋯ 이다.  
0≤𝑚  정수, 𝑧 는 0 에 가까운 복소변수 생성함수를 통해서 얻은 점근 공식들  
일부 무한급수 종종 점근 급수가 수렴하는 무한급수에 해당하지 않는다고 해도 정확한 경우가 있다. 차례거듭제곱 임의의 실수 𝑟 과 임의의 고정된 정수 𝑚≥0 대해 점근적으로 유효하다.  
연습문제 11 식(18)                                                                   이 참인 이유를 설명하라 𝑚=1, 𝑧= ln𝑛𝑛 이라고 할 때식(12)                                              에 적용이 가능하다. 이 때 𝑛->∞에 따라 ln𝑛𝑛->0이기 때문에 가능하다.  
(19)
TAOCP1 - 1.2.11.1 - O 표기법

More Related Content

More from JangHyuk You

게임 프로그래머를 위한 기초 수학 및 물리 - 9장
게임 프로그래머를 위한 기초 수학 및 물리 - 9장게임 프로그래머를 위한 기초 수학 및 물리 - 9장
게임 프로그래머를 위한 기초 수학 및 물리 - 9장JangHyuk You
 
도메인 주도 설계 - 6장 도메인 객체의 생명주기
도메인 주도 설계 - 6장 도메인 객체의 생명주기도메인 주도 설계 - 6장 도메인 객체의 생명주기
도메인 주도 설계 - 6장 도메인 객체의 생명주기JangHyuk You
 
Mongo DB 완벽가이드 - 4장 쿼리하기
Mongo DB 완벽가이드 - 4장 쿼리하기Mongo DB 완벽가이드 - 4장 쿼리하기
Mongo DB 완벽가이드 - 4장 쿼리하기JangHyuk You
 
프로그래머가 몰랐던 멀티코어 CPU 이야기 - 15, 16장
프로그래머가 몰랐던 멀티코어  CPU 이야기 - 15, 16장프로그래머가 몰랐던 멀티코어  CPU 이야기 - 15, 16장
프로그래머가 몰랐던 멀티코어 CPU 이야기 - 15, 16장JangHyuk You
 
TAOCP1 - 2.2.2 - 순차할당
TAOCP1 - 2.2.2 - 순차할당TAOCP1 - 2.2.2 - 순차할당
TAOCP1 - 2.2.2 - 순차할당JangHyuk You
 
IT 개발자가 쓴 통쾌한 인간관리 이야기 - Part2 : 프로세스가 제품이다
IT 개발자가 쓴 통쾌한 인간관리 이야기 - Part2 : 프로세스가 제품이다IT 개발자가 쓴 통쾌한 인간관리 이야기 - Part2 : 프로세스가 제품이다
IT 개발자가 쓴 통쾌한 인간관리 이야기 - Part2 : 프로세스가 제품이다JangHyuk You
 
Programming Lisp Clojure - 2장 : 클로저 둘러보기
Programming Lisp Clojure - 2장 : 클로저 둘러보기Programming Lisp Clojure - 2장 : 클로저 둘러보기
Programming Lisp Clojure - 2장 : 클로저 둘러보기JangHyuk You
 

More from JangHyuk You (7)

게임 프로그래머를 위한 기초 수학 및 물리 - 9장
게임 프로그래머를 위한 기초 수학 및 물리 - 9장게임 프로그래머를 위한 기초 수학 및 물리 - 9장
게임 프로그래머를 위한 기초 수학 및 물리 - 9장
 
도메인 주도 설계 - 6장 도메인 객체의 생명주기
도메인 주도 설계 - 6장 도메인 객체의 생명주기도메인 주도 설계 - 6장 도메인 객체의 생명주기
도메인 주도 설계 - 6장 도메인 객체의 생명주기
 
Mongo DB 완벽가이드 - 4장 쿼리하기
Mongo DB 완벽가이드 - 4장 쿼리하기Mongo DB 완벽가이드 - 4장 쿼리하기
Mongo DB 완벽가이드 - 4장 쿼리하기
 
프로그래머가 몰랐던 멀티코어 CPU 이야기 - 15, 16장
프로그래머가 몰랐던 멀티코어  CPU 이야기 - 15, 16장프로그래머가 몰랐던 멀티코어  CPU 이야기 - 15, 16장
프로그래머가 몰랐던 멀티코어 CPU 이야기 - 15, 16장
 
TAOCP1 - 2.2.2 - 순차할당
TAOCP1 - 2.2.2 - 순차할당TAOCP1 - 2.2.2 - 순차할당
TAOCP1 - 2.2.2 - 순차할당
 
IT 개발자가 쓴 통쾌한 인간관리 이야기 - Part2 : 프로세스가 제품이다
IT 개발자가 쓴 통쾌한 인간관리 이야기 - Part2 : 프로세스가 제품이다IT 개발자가 쓴 통쾌한 인간관리 이야기 - Part2 : 프로세스가 제품이다
IT 개발자가 쓴 통쾌한 인간관리 이야기 - Part2 : 프로세스가 제품이다
 
Programming Lisp Clojure - 2장 : 클로저 둘러보기
Programming Lisp Clojure - 2장 : 클로저 둘러보기Programming Lisp Clojure - 2장 : 클로저 둘러보기
Programming Lisp Clojure - 2장 : 클로저 둘러보기
 

TAOCP1 - 1.2.11.1 - O 표기법

  • 1. 1.2.11.1 O표기법 아꿈사 발표자 : 유유
  • 2. 목차 점근 공식 (Asymptotic Formula) 알고리즘 성능 분석 단방향 상등 (One-Way Equality) O(Big-O), Ω(Big-Omega), Θ(Big-Theta) 표기법 0 보다 큰 정수 n 0 에 가까운 복소변수z 일부 무한급수
  • 3. 점근 공식 (Asymptotic Formula) ‘어떠한 수량을 다른 것과 비교하기 위해, 그 수량을 정확하게 측정하는 것이 아니라 근사적으로 알고 싶은 경우’에 사용하는 방법이다. 간략화를 통해서 세부적인 정보를 숨기고 근사를 다룰 때 도움이 된다. 정확히 알려지지 않은 수량을 나타낸다.
  • 4. 알고리즘 성능 분석 시간 복잡도 분석 (수행 시간 분석) 알고리즘의 연산의 횟수(입력의 개수 (𝑛 ) 의 함수)를 측정하여 비교 점근적 표현, 점근적 복잡도 연산의 횟수를𝑛 이라고 하고 시간 복잡도를 표현할 때𝑛 이 무한히 큰 경우로 국한시킨다. 입력 크기(𝑛 )을 무한히 크다고 가정한 후함수 값을 비교해 보면log𝑛<𝑛<𝑛log𝑛<𝑛2<𝑛3 이다. 따라서log𝑛의 복잡도를 가진 알고리즘이다른 알고리즘에 비해 효율성이 좋다고할 수 있다.  
  • 5. 단방향 상등 (One-Way Equality) 항상 등식의 우변이 좌변보다 더 자세한 정보를 제공하지 않는다 즉, 우변은 항상 좌변보다 조악한 버전이다. 12𝑛2+𝑛=𝑂𝑛2 은가능하나 𝑂𝑛2= 12𝑛2+𝑛 은 절대로 불가능하다.  
  • 6. O(Big-O), Ω(Big-Omega), Θ(Big-Theta) 표기법 O(Big-O)표기법 상한선 표기법 𝑔𝑛≥𝑂𝑓𝑛 (0<𝑛 정수)  𝑂(𝑓𝑛)이 나타내는 수를 𝑥𝑛이라고 할 때, 모든 정수 𝑛0≤𝑛에대해서 𝑥𝑛≤𝑀𝑓𝑛 을 만족하는 양의 정수 𝑀과 𝑛0이 존재한다. Ω(Big-Omega) 표기법 하한선 표기법 𝑔𝑛≤Ω𝑓𝑛 (0<𝑛 정수) Ω(𝑓𝑛)이 나타내는 수를 𝑥𝑛이라고 할 때, 모든 정수 𝑛0≤𝑛에대해서 𝐿𝑓𝑛≤𝑥𝑛을 만족하는 양의 정수 𝐿과 𝑛0이 존재한다. Θ(Big-Theta) 표기법 𝑔𝑛=Θ𝑓𝑛⇔𝑔𝑛=𝑂𝑓𝑛 이고 𝑔𝑛=Ω𝑓𝑛 (0<𝑛 정수)  
  • 7.
  • 8. 연습문제 13 다음을 증명 또는 반증하라.오직 𝑓𝑛=𝑂𝑔𝑛 일 때에만 𝑔𝑛=Ω𝑓𝑛 이다. 𝑓𝑛=𝑂𝑔𝑛 0<𝑛 정수,모든 정수 𝑛0≤𝑛일 때𝑓𝑛≤𝑀𝑔𝑛을 만족하는 양의 정수 𝑀과 𝑛0이 존재한다. 𝑔𝑛=Ω𝑓𝑛0<𝑛 정수,모든 정수 𝑛0≤𝑛일 때𝐿𝑓𝑛≤𝑔𝑛을 만족하는 양의 정수 𝐿과 𝑛0이 존재한다. 위의 정의를 통해서 𝑓𝑛≤𝑀𝑔𝑛 , 𝐿𝑓𝑛≤𝑔𝑛 를 통해서 𝐿=1𝑀 인 관계를알 수 있다.  
  • 9. 예를 들어양의 정수 𝑛->∞, 𝑔𝑛=𝑛 이면 2𝑛=𝑂𝑔𝑛 이 되고 𝑛2=Ω𝑔𝑛 이 된다. 이 때 𝐿=1𝑀  관계에서는 𝑓𝑛=𝑂𝑔𝑛 인 경우에 𝑔𝑛=Ω𝑓𝑛 가 항상 참이 된다.  
  • 10. 위의 식을 통해서 다음과 같은 사실을 도출해 낼 수 있다. O(Big-O)표기법은 상한선에 대해서는 항상 참이다. 즉, 12+22+⋯+𝑛2=𝑂(𝑛2) 은 상한선이 아니기 때문에 거짓이다.   0 보다 큰 정수 n
  • 11. 𝑃𝑛=𝑎0+𝑎1𝑛+⋯+𝑎𝑚𝑛𝑚이 𝑚이하 차수의 임의의 다항식이면 𝑃𝑛=𝑂(𝑛𝑚) 에대한 증명 1≤𝑛정수 일 때 𝑀=𝑎0+𝑎1+⋯+𝑎𝑚, 𝑛0=1 (𝑛0≤𝑛)로 할 수 있다.  
  • 12. O표기법을 사용할 때 가능한 연산들 O표기법은 n의 차수가 가장 큰 항이 가장 큰 영향을 미친다.
  • 13. 0 에 가까운 복소변수z 복소변수 𝑧 의 함수들에서, 𝑧 가 0 에 가까울 때는 자주 쓰인다. 𝑂𝑓𝑧는 𝑧<𝑟일때𝑔(𝑧)≤𝑀𝑓(𝑧)를 만족하는 임의의 수량을 나타낸다. 작은 복소변수𝑧의함수를 가리킨다. 𝑀, 𝑟(실수) 은미지정된 상수이다. 𝑧=𝑧0에 수렴하는 무한 멱급수 함수에서𝑧<𝑧0일때에는𝑘≥0𝑎𝑘𝑧𝑘도 항상 수렴한다. 𝑧0≠0이면 이다. O표기법에서는 상한은 항상 참이므로 𝑂𝑧𝑚+1=𝑎𝑚+1+𝑎𝑚+2𝑧+⋯𝑧𝑚+1으로 생각할 수 있다. 𝑧≤𝑟<𝑧0 이면 그 상계가 𝑎𝑚+1+𝑎𝑚+2𝑟+𝑎𝑚+3𝑟2+⋯ 이다.  
  • 15. 일부 무한급수 종종 점근 급수가 수렴하는 무한급수에 해당하지 않는다고 해도 정확한 경우가 있다. 차례거듭제곱 임의의 실수 𝑟 과 임의의 고정된 정수 𝑚≥0 대해 점근적으로 유효하다.  
  • 16. 연습문제 11 식(18) 이 참인 이유를 설명하라 𝑚=1, 𝑧= ln𝑛𝑛 이라고 할 때식(12) 에 적용이 가능하다. 이 때 𝑛->∞에 따라 ln𝑛𝑛->0이기 때문에 가능하다.  
  • 17. (19)