kohigowild
[ํ๋ก๊ทธ๋๋จธ์ค] ๊ฐ์ ์ซ์๋ ์ซ์ด ๋ณธ๋ฌธ
๐พ ๋ฌธ์ ์ค๋ช
๋ฐฐ์ด arr๊ฐ ์ฃผ์ด์ง๋๋ค. ๋ฐฐ์ด arr์ ๊ฐ ์์๋ ์ซ์ 0๋ถํฐ 9๊น์ง๋ก ์ด๋ฃจ์ด์ ธ ์์ต๋๋ค. ์ด๋, ๋ฐฐ์ด arr์์ ์ฐ์์ ์ผ๋ก ๋ํ๋๋ ์ซ์๋ ํ๋๋ง ๋จ๊ธฐ๊ณ ์ ๋ถ ์ ๊ฑฐํ๋ ค๊ณ ํฉ๋๋ค. ๋จ, ์ ๊ฑฐ๋ ํ ๋จ์ ์๋ค์ ๋ฐํํ ๋๋ ๋ฐฐ์ด arr์ ์์๋ค์ ์์๋ฅผ ์ ์งํด์ผ ํฉ๋๋ค. ์๋ฅผ ๋ค๋ฉด,
arr = [1, 1, 3, 3, 0, 1, 1] ์ด๋ฉด [1, 3, 0, 1] ์ return ํฉ๋๋ค. arr = [4, 4, 4, 3, 3] ์ด๋ฉด [4, 3] ์ return ํฉ๋๋ค.
๋ฐฐ์ด arr์์ ์ฐ์์ ์ผ๋ก ๋ํ๋๋ ์ซ์๋ ์ ๊ฑฐํ๊ณ ๋จ์ ์๋ค์ return ํ๋ solution ํจ์๋ฅผ ์์ฑํด ์ฃผ์ธ์.
๐พ ์ ํ์ฌํญ
๋ฐฐ์ด arr์ ํฌ๊ธฐ : 1,000,000 ์ดํ์ ์์ฐ์ ๋ฐฐ์ด arr์ ์์์ ํฌ๊ธฐ : 0๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ๊ณ 9๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์ ์
๐พ ๋์ ๋ต์
function solution(arr) {
return arr.filter((val, idx) => val != arr[idx+1])
}
- filter ํจ์๋ฅผ ์ฌ์ฉํด์ ๋ฐฐ์ด์ ํํฐ๋ง ํ๋ค.
- val ๊ฐ์ด idx+1์ ๊ฐ์ง ์์ผ๋ฉด ํ ์คํธ ํต๊ณผ ⇒ ๋ฐํ
function solution(arr) {
const answer = [];
for (i = 0; i < arr.length; i++) {
if (arr[i] !== arr[i+1]) {
answer.push(arr[i])
}
} return answer;
}
- for loop ์ ์ฉ ๋ต์
- ์๋ก์ด ๋ฐฐ์ด answer์ ์ ์ธํ๊ณ ์กฐ๊ฑด์ ๋ง๋ ๊ฐ์ answer์ push ํด ์ค๋ค.