큰 O 표기법에서 물결표는 무엇을 의미합니까?


14

나는 논문을 읽고 있는데, 시간 복잡도 설명에서 시간 복잡성은 라고 말합니다 .O~(22n)

인터넷과 위키 백과를 검색했지만이 물결표가 big-O / Landau 표기법으로 무엇을 의미하는지 찾을 수 없습니다. 논문 자체에서 나는 이것에 대한 단서를 찾지 못했습니다. 어떻게합니까 평균?O~()


1
"인터넷을 검색했습니다"어떻게?!? :-) 일반적으로 이와 같은 질문에 대한 나의 첫 번째 반응은 Google이 바로 답변을 알려줄 것입니다. 그러나 이것에 대해, 내가 어떤 검색어를 사용하는지에 대한 단서가 없습니다!
David Richerby

"landau symbols tilde"를 검색했지만 결정적인 것은 나타나지 않았습니다. 나는 구글이 물결표가 시각적으로 어떻게 보이는지 알고 렌더링 된 TeX 사진에서 그것을 찾는 방법을 알고있는 AI가 필요하다고 생각한다. p
Johannes Schaub-litb

때때로 당신이 보는 또 다른 것은 Big Oh star, 즉 입니다. 예를 들어 정확한 지수 시간 알고리즘과 함께 사용되며 표기법은 입력 크기에 폴리 노미 바운드 된 요소를 억제합니다. O
Juho

답변:


19

로그 요소를 "무시"하는 big-O의 변형입니다.

f(n)O~(h(n))

다음과 같습니다.

k:f(n)O(h(n)logk(h(n)))

에서 위키 백과 :

본질적으로, 그것은 BIG-입니다 표기법은 다른 슈퍼 로그 함수의 성장 속도 효과가보다 더 나쁜 런타임 성능을 예측하는 것이 더 중요하다 대형 입력 매개 변수에 대한 성장 속도 폭발을 나타 내기 때문에 로그 요인을 무시하고, 대수-성장 인자 (들)에 의해 더 미세한 포인트 효과. 이 표기법은 종종 상수 와 대해 이 항상 이기 때문에 현재의 문제에 대해 너무 밀접하게 묶여있는 것으로 알려진 성장률 내에서 "니트 피킹 (nitpicking)"을 제거하는 데 사용됩니다. ).Ologkno(nε)kε>0


과 가 다르다는 결론을 내릴 수 있습니까? 그것들은 상호 교환 적으로 사용되는 것처럼 보이기 때문에 혼란 스럽습니다. ~ O ( 2 2 N )O(22n+o(n))O~(22n)
Johannes Schaub-litb

1
@ JohannesSchaub-litb 예, 마다 이상으로 증가하지만 이하로 증가하는 함수가 있으므로 첫 번째에는 포함되지만 두 번째에는 포함되지 않습니다. 어쨌든 : 그 표기법의 요점은 점근 적 복잡성 의 중요한 부분 만을 보여주는 것이며 일반적으로 은 중요하지 않은 것으로 간주됩니다. logknkno(n)
Bakuriu

2
추론으로 은 . @ JohannesSchaub-litb 은 . 경우에 당신은 실제로 의미 ,이 포함 뿐만 아니라, 몇 가지 기능이 약간 더 빠르게 성장하고있다. 사람들은 종종 잘못하지 않기 때문에 대신 그것을 사용합니다 . 는 덜 알려진 표기법이며 정밀도의 손실은 종종 중요하지 않습니다. O(22npoly(n))O(22n+o(n))O(22n)O(22n+o(n)) ~ O (22n) ~ O (22nO~(22n)O(22npoly(n))O(22n+o(n))O(22n)O(22n+o(n)) O~(22n)~ OO~(22n)O~
Emil Jeřábek

아 이해 해줘서 고마워 이것은 많은 이해
요하네스 SCHAUB을 - litb
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.