ALOHA CLASS
/
νλ‘κ·Έλλ°
/
Java
/
μκ³ λ¦¬μ¦
/
μκ°λ³΅μ‘λ
/
μ λ ¬ μκ°λ³΅μ‘λ ꡬν΄λ³΄κΈ°
Search
Share
μ λ ¬ μκ°λ³΅μ‘λ
μκ°λ³΅μ‘λ λΆμ
μ ν μ λ ¬μ μκ°λ³΅μ‘λλ O(nΒ²)μ λλ€. μ΄λ λ€μκ³Ό κ°μ λΆμμ ν΅ν΄ λμΆλ©λλ€:
β’
μΈλΆ 루ν (i):
nλ² λ°λ³΅
β’
λ΄λΆ 루ν (j):
(n-i)λ² λ°λ³΅
λ°λΌμ μ 체 μ°μ° νμλ:
(n-1) + (n-2) + ... + 2 + 1 = n(n-1)/2
μ νμ λ ¬
μκ°λ³΅μ‘λ λΆμ
λ²λΈ μ λ ¬μ μκ°λ³΅μ‘λλ O(nΒ²)μ λλ€. μ΄λ λ€μκ³Ό κ°μ λΆμμ ν΅ν΄ λμΆλ©λλ€:
β’
μΈλΆ 루ν (i):
n-1λ² λ°λ³΅ β’ λ°°μ΄μ μ²μλΆν° λκΉμ§ μν
β’
λ΄λΆ 루ν (j):
(n-i-1)λ² λ°λ³΅ ⒠첫 λ²μ§Έ λ°λ³΅: n-1λ² λΉκ΅ β’ λ λ²μ§Έ λ°λ³΅: n-2λ² λΉκ΅ β’ λ§μ§λ§ λ°λ³΅: 1λ² λΉκ΅
λ°λΌμ μ 체 μ°μ° νμλ:
(n-1) + (n-2) + ... + 2 + 1 = n(n-1)/2
n
(
n
β
1
)
2
=
n
2
2
β
n
2
\frac{n(n-1)}{2} = \frac{n^2}{2} - \frac{n}{2}
2
n
(
n
β
1
)
β
=
2
n
2
β
β
2
n
β
λ²λΈμ λ ¬
μκ°λ³΅μ‘λ λΆμ
μ½μ μ λ ¬μ μκ°λ³΅μ‘λλ λ€μκ³Ό κ°μ΅λλ€:
β’
μ΅μ μ κ²½μ°:
O(n) - λ°°μ΄μ΄ μ΄λ―Έ μ λ ¬λμ΄ μλ κ²½μ°
β’
νκ· μ κ²½μ°:
O(nΒ²)
β’
μ΅μ μ κ²½μ°:
O(nΒ²) - λ°°μ΄μ΄ μμμΌλ‘ μ λ ¬λμ΄ μλ κ²½μ°
μκ°λ³΅μ‘λ O(nΒ²)κ° λμ€λ κ³Όμ :
β’
μΈλΆ 루νλ n-1λ² μ€ν (iλ 1λΆν° n-1κΉμ§)
μ½μ μ λ ¬
μκ°λ³΅μ‘λ λΆμ
λ³ν© μ λ ¬μ μκ°λ³΅μ‘λλ O(n log n)μ λλ€. μ΄λ λ€μκ³Ό κ°μ λΆμμ ν΅ν΄ λμΆλ©λλ€:
β’
λΆν κ³Όμ :
λ°°μ΄μ λ°μΌλ‘ λλλ κ³Όμ μ΄ log nλ² λ°μ
β’
λ³ν© κ³Όμ :
κ° λ 벨μμ nκ°μ μμλ₯Ό λ³ν©νλ λ° O(n)μ μκ°μ΄ μμ
λ°λΌμ μ 체 μκ°λ³΅μ‘λλ O(n) Γ O(log n) = O(n log n)μ΄ λ©λλ€.
λ³ν©μ λ ¬
μκ°λ³΅μ‘λ λΆμ
ν΅μ λ ¬μ μκ°λ³΅μ‘λλ λ€μκ³Ό κ°μ΅λλ€:
β’
μ΅μ μ κ²½μ°:
O(n log n) - νΌλ²μ΄ νμ μ€κ° κ°μΌλ‘ μ νλλ κ²½μ°
β’
νκ· μ κ²½μ°:
O(n log n) - μΌλ°μ μΈ μν©μμμ μ±λ₯
β’
μ΅μ μ κ²½μ°:
O(nΒ²) - μ΄λ―Έ μ λ ¬λ λ°°μ΄μ΄λ νΌλ²μ΄ νμ μ΅μ/μ΅λκ°μΈ κ²½μ°
ν΅μ λ ¬