ocean floor/algorithm floor

Big O Notation(λΉ…μ˜€ ν‘œκΈ°λ²•) #4

dankthedust 2022. 2. 25. 23:24

4. Big O ν‘œν˜„μ‹μ˜ λ‹¨μˆœν™”

3νŽ˜μ΄μ§€μ—μ„œ λΉ…μ˜€ ν‘œν˜„μ‹μ— λŒ€ν•΄μ„œ κ°„λ‹¨νžˆ μ•Œμ•„λ³΄μ•˜λ‹€.

μ•žμ „μ— μ‚΄νŽ΄λ³΄μ•˜λ“―μ΄ solution1은 for 문을 ν†΅ν•œ 루프가 μ‘΄μž¬ν•˜λ©°, μš°λ¦¬λŠ” ν•΄λ‹Ή μ½”λ“œμ—μ„œ μΌμ–΄λ‚˜λŠ” 연산을 5n+2 둜 μ •μ˜ν–ˆμ—ˆλ‹€. 그럼 λΉ…μ˜€ ν‘œν˜„μ‹λ„ λ™μΌν•œκ°€?

정닡은 κ·Έλ ‡μ§€ μ•Šλ‹€. n 즉, μž…λ ₯값에 따라 λ³€λ™ν•˜λŠ” λΉ…μ˜€ ν‘œν˜„μ‹λ“€( n^2 etc...)은 n 값을 크게 보면 λ‹€λ₯Έ κ°’λ“€κ³Ό 큰 차이성을 λ‘κ°ν•˜μ§€ μ•ŠλŠ”λ‹€.

5n+2 λ‚˜ 10n μ΄λ‚˜ n 값에 따라 μ¦κ°€ν•˜λŠ” μ‹œκ°„νš¨μœ¨μ„±μ˜ λΉ„λ‘€λŠ” λ‹€λ₯Έ n^2 λ“±μ˜ μ§€μˆ˜ν•¨μˆ˜ λ“±κ³Όμ˜ λΉ„κ΅μ—λŠ” 큰 차이λ₯Ό λ³΄μ΄λ‚˜ 같은 ν•¨μˆ˜μ‹ λΌλ¦¬μ—μ„œμ˜ μ°¨μ΄λŠ” 큰 두각을 보이지 μ•ŠλŠ”λ‹€λΌλŠ” 것이닀. νŠΉνžˆλ‚˜ 5n+2 뒀에 뢙은 +2 λŠ” λ”λ”μš±

고정적과 μœ λ™μ μ„ ν†΅ν•΄μ„œ μ‰½κ²Œ λΉ…μ˜€ ν‘œν˜„μ‹μ„ μ •μ˜ν•  수 μžˆλ‹€.

n 값에 영ν–₯을 λ°›λŠ”κ°€μ™€ κ·Έλ ‡μ§€ μ•Šμ€κ°€.

  • n의 값에 영ν–₯을 λ°›λŠ”λ‹€.
    • 둜그 ν•¨μˆ˜( O(log n), O(nlog n) etc...)
    • μ„ ν˜• ν•¨μˆ˜( O(n) )
    • μ§€μˆ˜ ν•¨μˆ˜( O(n^2) etc...)
  • n의 값에 영ν–₯을 λ°›μ§€ μ•ŠλŠ”λ‹€.
    • μƒμˆ˜ ν•¨μˆ˜( O(1) )

즉 μ‰½κ²Œ 말해 O(n^3 + n + n^2 + nlog n) κ³Ό 같더라도 제일 큰 μƒμŠΉν­μ„ μ§€λ‹Œ 것( O(n^3) )이 λΉ…μ˜€ ν‘œν˜„μ‹μ΄λ‹€.