다른 복잡도로 같은 결과를 계산하는 2 개의 algorthim이있는 경우 O (log n)은 항상 빠릅니까? 그렇다면 설명해주십시오. BTW 이것은 배정 문제가 아닙니다.O (log n)은 항상 O (n)보다 빠릅니다.
10
A
답변
23
아니요 하나의 알고리즘이 N/100
에서 실행되고 다른 알고리즘이 (log N)*100
에서 실행되는 경우 두 번째 알고리즘은 더 작은 입력 크기의 경우 느려집니다. 점근선 복잡성은 입력 크기가 무한대로 갈 때 실행 시간의 동작에 관한 것입니다.
12
아니요, 항상 더 빠를 수는 없습니다. 하지만 문제의 크기가 커지면, 은 결국이고 O (log n) 알고리즘은 O (n) 알고리즘보다 빠릅니다.
일반적으로 O (log n) 알고리즘이 O (n) 알고리즘을 추월하는 지점은 매우 빠르게 나타납니다. O (n)과 O (n^2) 사이에 큰 차이가있는 것처럼 O (log n)과 O (n)에는 큰 차이가 있습니다. 혹시 존 벤틀리에 의해 프로그래밍 진주을 읽을 수있는 기회를 가질 경우
, 그가 O에 대해 O (n)이 알고리즘을 구덩이가있는 멋진 장이 (가 N^2)에 가능한 모든 일을 하나, O (n^2)에게 이점을주십시오. (그는 Alpha에서 C로 O (n^2) 알고리즘을 코딩하고, 오래된 Z80 또는 뭔가에 대해 해석 된 BASIC에서 O (n) 알고리즘을 약 1MHz로 실행합니다.) O (n) 알고리즘이 O (n^2)를 추월합니다.
그러나 때때로 복잡한 알고리즘을 발견 할 수 있습니다. 복잡한 알고리즘은 단순한 알고리즘보다 약간 낫습니다. 이 경우 맹목적으로 더 나은 빅 -O를 가진 알고리즘을 선택하지 마십시오. 매우 큰 문제에 대해서만 더 빠르다는 것을 알 수 있습니다.
관련 문제
- 1. 시간 복잡도는 + n은 O (L)
- 2. 큰 오 표기 O ((log n)^k) = O (log n)?
- 3. Big O Log 문제 해결
- 4. O (logn)은 항상 트리입니까?
- 5. ListBox.FindString 최악의 런타임은 무엇입니까? O (n), O (n log n), O (1)?
- 6. O (LogN) == O (3LogN)입니까?
- 7. 충돌 탐지를위한 O (n^log n) 알고리즘
- 8. 복잡성 (빅 O)
- 9. O (log n) 시간에 배열에서 중복 요소 찾기
- 10. 왜이 함수/루프 O (log n)이 아니라 O (n)입니까?
- 11. 언제 O (n * n)이 더 빠를 것인가? O (log n)?
- 12. crt0.o 및 crt1.o - 차이점은 무엇입니까?
- 13. I/O 포트와 I/O 메모리의 차이점
- 14. O 표기가 붙어있다
- 15. I/O, 로컬 드라이브의 파일에 쓰거나 소켓에 쓰기가 더 빠릅니다.
- 16. O (n log n) 복잡도를 사용하여 Java HashMap을 값순으로 정렬합니다.
- 17. 왜 문자열 정렬 O (n log n)입니까?
- 18. O (log (n)) 미만의 정렬 된 배열에서 검색 실행 시간
- 19. O (n log n)보다 일반적이고 실용적인 정렬 알고리즘이 빠릅니까?
- 20. 쿼리를위한 O (log n) 복잡성을 가진 데이터 구조
- 21. O (log n) 복잡도에서 정렬 된 배열의 중앙값이란 무엇입니까?
- 22. O (n log n) 시간에 특수 점 k를 찾는 알고리즘
- 23. 이진 검색 트리를 작성하는 이유는 O (N Log N)입니까?
- 24. 큰 O 혼란
- 25. 큰 O
- 26. O (n) 시간 대괄호 패턴이있는 O (1) 부분 문자열 검색
- 27. 하스켈 : O (1) 추가 및 O (1) 색인을 사용한 Datastruture?
- 28. 확률은 O (m)와 같습니다.
- 29. Help Big O 이해하기
- 30. 간단한 Big-O 계산
충분히 큰 * n *의 경우 항상 더 빠릅니다. – Phonon