728x90
λ°μν
π 03 - Special Sort(κ΅¬κΈ μΈν°λ·°)
Nκ°μ μ μκ° μ λ ₯λλ©΄ μ λ ₯λ κ°μ μ λ ¬νλ λ¬Έμ μ΄λ€. μμ μ μλ μμͺ½μ μμ μ μλ λ·μͺ½μ μμ΄μΌ νλ€. λν μμ μ μμ μμ μ μμ μμμλ λ³ν¨μ΄ μμ΄μΌ νλ€.
π νμ΄ λ°©λ²(κ°μ¬λκ³Ό λμΌ)
λ²λΈ μ λ ¬ λ¬Έμ μ μμ©μΌλ‘ νμ΄ λ°©λ² λν λ§€μ° λΉμ·νλ€. μλ£λ₯Ό κ΅ννλ μ‘°κ±΄λ§ λ°κΎΈλ©΄ λλ€.
- jλ₯Ό λλλ§λ€ μλ‘ μΈμ ν μμ μ€ μμͺ½ μμ jκ° μμμ΄κ³ , λ€μͺ½ μμ j + 1μ΄ μμμ΄λ©΄ κ΅ννλ©΄μ μλ£λ₯Ό μ λ ¬νλ€.
- 1νμ μ μνν λλ§λ€ μ λ ¬μ΄ νμ λλ μλ£κ° νλμ© λμ΄λλ―λ‘ jκ° λλ λ²μλ νλμ© μ€μ΄λ λ€.
π νμ΄
function solution(arr) {
// Shallow Copy
let answer = arr;
for (let i = 0; i < arr.length - 1; i++) {
for (let j = 0; j < arr.length - 1 - i; j++) {
if (arr[j] > 0 && arr[j + 1] < 0) {
[arr[j], arr[j + 1]] = [arr[j + 1], arr[j]];
}
}
}
return answer;
}
let arr = [1, 2, 3, -3, -2, 5, 6, -6];
console.log(solution(arr));
'Algorithm > μΈνλ°(inflearn)' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[JavaScript/section 7] 05 - LRU (0) | 2022.10.05 |
---|---|
[JavaScript/section 7] 04 - μ½μ μ λ ¬ (0) | 2022.10.03 |
[JavaScript/section 7] 02 - λ²λΈ μ λ ¬ (0) | 2022.09.30 |
[JavaScript/section 7] 01 - μ ν μ λ ¬ (0) | 2022.09.29 |
[JavaScript/section 6] 07 - κ΅μ‘κ³Όμ μ€κ³ (0) | 2022.09.28 |