πμ€λ λ°°μ΄ κ²
λΉ μ€ νκΈ°λ²
: μ λ ₯λ λ΄μ©μ΄ λμ΄λ μλ‘ μκ³ λ¦¬μ¦μ μ€ν μκ°μ΄ μ΄λ»κ² λ³νλμ§ μ€λͺ νλ λ°©μ
-> μ νν μμΉλΌκΈ° λ³΄λ€ μ λ°μ μΈ μΆμΈμ λν κ°λ
-> μ€νμκ°μ΄ κ°λ μ΅λμΉλ₯Ό μλ―Ένλ€.
O(2n) → O(n)
O(500) → O(1)
O(13n^2) → O(n^2)
μμ λΆλ μμ, νΉμ λ€μ λΆλ μμλ μμ μ λ¨μννμ¬ νννλ€. μμΉκ° 컀μ‘μ λ κ·Έλν λͺ¨μμμ μ°¨μ΄κ° ν¬μ§ μκΈ° λλ¬Έμ΄λ€.
1. μ°μ(λλμ , κ³±μ , λΊμ , λ§μ ...)μ μμμκ°μ΄ κ±°λ¦°λ€.
2. λ³μ μ²λ¦¬λ μμμκ°μ΄ κ±Έλ¦°λ€.
3. λ°°μ΄μμ μΈλ±μ€λ‘ κ°μ μ°Ύλ κ²λ μμμκ°μ΄ κ±Έλ¦°λ€.
4. 루νκ° μμΌλ©΄ 루νμ κΈΈμ΄x 루ν μμ μλ μ°μ°λ€ λ§νΌμ μκ°μ΄ κ±Έλ¦¬κ³ μ€μ²©λ£¨νκ° μμΌλ©΄ n μ κ³±μ΄ λ μ μλ€.
λΉ μ€λ₯Ό κ³μ°ν λ μκ°λ³΅μ‘λμ 곡κ°λ³΅μ‘λλ‘ λλ μ μλ€.
κ³΅κ° λ³΅μ‘λ
1. boolean, numbers λ±μ λͺ¨λ μμμ΄λ€.
2. λ¬Έμμ΄μ κΈΈμ΄λ§νΌ 곡κ°μ μ°¨μ§νλ€.
3. λ°°μ΄μ΄λ κ°μ²΄λ κΈΈμ΄λ§νΌ 곡κ°μ μ°¨μ§νλ€.
let total = 0;
for(let i = 0; i<=arr.length; i++) {
total += arr[i];
}
μκ°λ³΅μ‘λκ° μλ 곡κ°λ³΅μ‘λλ‘ μκ°νμ λ,
λ³μ totalμ numberλ‘ μμ 곡κ°μ μ°¨μ§νλ€. λ³μ iλ numberλ‘ μμ 곡κ°μ μ°¨μ§νλ€. λ°λ³΅λ¬Έμ λ³Όλ©΄μ totalμ κ°μ΄ λ³ννμ§λ§ numberλ μμ 곡κ°μ μ°¨μ§νλ―λ‘ λ³νκ° μλ€. μ¦ O(1)μ 곡κ°λ³΅μ‘λλ₯Ό κ°μ§λ€.
let total = [];
for(let i = 0; i<=arr.length; i++) {
total.push(arr[i]);
}
λ°°μ΄μ κ²½μ° total λ³μμ μ μΈλ λ°°μ΄μ λ°λ³΅λ¬Έμ μν΄ μΆκ°λλ κ°μ κ°μμ λ°λΌ μ°¨μ§νλ 곡κ°μ΄ λ¬λΌμ§λ€. μ¦, arrμ κΈΈμ΄ bμ λ°λΌ μ°¨μ§νλ 곡κ°μ΄ λ¬λΌμ§λ―λ‘ O(n)μ 곡κ°λ³΅μ‘λλ₯Ό κ°μ§λ€.
πλ°°μ΄ μ
λκ° μκ³ μλ λΉ μ€ νκΈ°λ²μ λν΄ λ€μ κ°λ λΆν° μ 립ν μ μμλ€. μκ°λ³΅μ‘λμ λν κ²λ§ μκ³ μμλλ° κ³΅κ°λ³΅μ‘λλ μλ€λ κ²μ μκ² λμλ€. κ°μμμ μ΄μΌκΈ° ν κ²μ²λΌ μκ°λ³΅μ‘λκ° μμ’μλ 곡κ°λ³΅μ‘λκ° μμμκ°μΈ μκ³ λ¦¬μ¦λ μλ κ²μ²λΌ λͺ©μ μ λ°λΌ μ΄λ€ κ²μ μ€μμ ν κ²μΈμ§κ° λ¬λΌμ§ κ² κ°λ€.
μ§κΈμ κ°λ¨ν μμ λν κ³μ°λ§ κ°λ₯νμ§λ§ μ μ μκ³ λ¦¬μ¦μ μ΅μν΄μ§λ©΄ 볡μ‘ν λ‘μ§λ μ€μ€λ‘ μκ°λ³΅μ‘λλ 곡κ°λ³΅μ‘λλ₯Ό κ³μ°ν μ μμκΉ? μμΌλ‘ λ°°μΈ λ΄μ©μ΄ κΆκΈνλ€.
μΆμ²: μ λ°λ―Έ κ°μ: https://www.udemy.com/course/best-javascript-data-structures/
'μΌμ > Today I Learned' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
2023.02.03 (0) | 2023.02.03 |
---|---|
2023.02.01 (0) | 2023.02.01 |
2023.01.04 (0) | 2023.01.04 |
[λ°λΈμ½μ€ Day53] 2022.12.28 (0) | 2022.12.28 |
[λ°λΈμ½μ€ Day52] 2022.12.27 (0) | 2022.12.27 |