O (n log n)에 의해 기술 된 함수 클래스의 이름은 무엇입니까?


40

"Big O"에서 공통 표기법에는 "일정한 요인이 아니라"라는 공통 이름이 있습니다.

O (1) 은 "일정합니다"

O (log n) 는 "로그"입니다.

O (n) 은 "선형"입니다

O (n ^ 2) 는 "Quadratic"입니다

O (n * log n) 는 ???

그냥 "n log n"입니까 아니면 위와 같은 특별한 이름이 있습니까?


답변:


52

이것을 linearithmic time 이라고하며 , quasi linear 로 알려진보다 일반적인 클래스의 특별한 경우입니다 . 이름에서 알 수 있듯이이 클래스에 속하는 알고리즘은 거의 선형 시간으로 실행됩니다. 사실 그들은 실행 알고리즘보다 낮은 복잡도가 와 .O(nk)k>1


의견은 긴 토론을위한 것이 아닙니다. 이 대화는 채팅 으로 이동 되었습니다 .
Gilles 'SO- 악마 그만'


11

나는 항상 "log-linear"로 묘사되는 O (n log n)을 들었습니다.


4
즉, 하나 또는 두 개의 참조가 좋을 것입니다.
Raphael

7

의견이 너무 길어서 답을 썼습니다. 많은 사람들이 이미 첫 번째 vanswer를 찬성했고이 답변에 동의하는지 확실하지 않기 때문에 첫 번째 답변에 이것을 추가하지 않았습니다.

  • 나는 선형 답이 수용 된 답변에 대한 의견에 명시된 바와 같이 잘 확립 된 용어 라고 생각하지 않습니다 . 나는이 용어와 CS 코스 그리고이 용어와 많은 온라인 사전을 사용하는 Sedgewick의 다른 책을 사용하여 다소 젊은 기사를 봤습니다.
  • 내가 기사 라는 용어 는 두 기사에서 발견되었습니다.

    NQL
    CP Schnorr
    Journal of Computing Association for Computing Association for Computing Machinery,
    Vol 25 에서 만족도가 준준 결함이다 . 1978 년 1 월 1 일, pp 136-1,15

이 Schorr의 기사를 다루는 Wikipedia에 인용 된 기사에서. Schnorr는 QL (복합 클래스) 및 NQL (비결정론 적 Quasilinear)을 소개합니다.
준 선형도 부분 미분 방정식 이론에 사용 된 것으로 보입니다.

  • 로그 선 이라는 용어 는 다른 상황 에서도 사용됩니다.

대체로 하나 이상의 위키 백과가 널리 사용되는 이름이없는이 기능에 대한 이름을 제공하고자하는 것 같습니다. 그러나 지금까지도 그 이름 중 어느 것도 널리 받아 들여지지 않는 것 같습니다 (이것은 Wikipedia 가해서는 안되는 일종의 조작이라고 생각합니다). 용어 질문에 Wikipedia를 사용한다면 조심해야한다고 생각합니다. 그리고이 기능을 위해서는 충분한 소스가 아닙니다. 이 함수에 널리 통용되는 이름은 n log n 입니다.


1
선형 선형로그 선형 의 정당성은 논란의 여지가 있지만, 준 선형 은 잘 정의 된 용어 라고 생각합니다 . 연구 논문에서 널리 사용되는 것 같습니다.
Roukah

@Roukah는 그렇습니다. 그러나 똑같은 의미는 아닙니다. 준 선형이 더 일반적입니다. - 나는 위키 백과가 모호 이름을 사용하여 문제가 무엇을 볼 수 없습니다, 더 나은 대안이 보인다없고, 있다 가 훨씬 확산을 가지고 있지 않더라도, 합리적으로 유명한 소스에 사용됩니다. 사실 나는 매우 일반적인 복잡성 클래스 임에도 불구하고 확산되지 않았다는 사실은 사람들이 그것을 더 많이 사용하기 시작한 시점에 관한 것이라고 말합니다.
leftaroundabout

+1 "이 기능에 널리 사용되는 이름은 n log n입니다."-다른 모든 답변은 재미 있고 교묘하지만 귀하가 옳다고 생각합니다. 나는 며칠 동안 "선형"이라고 말하는 연습을 해왔지만 여전히 혀를 굴리지 않습니다. "En log en"은 말하기 쉽고 기억하기 쉬우 며 Big O에 익숙한 모든 사람이 즉시 이해합니다. 조금 생각해 보 겠지만이 답변에 동의를 옮겨야 할 수도 있습니다.
GlenPeterson 2016
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.