큰 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)"을 제거하는 데 사용됩니다. ).Ologk⁡no(nε)kε>0


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

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